1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
blog_image.php
См. документацию.
1<?php
2
3require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/blog/general/blog_image.php");
4
6{
7 /*************** ADD, UPDATE, DELETE *****************/
8 public static function Add($arFields)
9 {
10 global $DB;
11
12 $arFields1 = array();
13 foreach ($arFields as $key => $value)
14 {
15 if (mb_substr($key, 0, 1) == "=")
16 {
17 $arFields1[mb_substr($key, 1)] = $value;
18 unset($arFields[$key]);
19 }
20 }
21
23 return false;
24
25 if (is_array($arFields['FILE_ID']))
26 {
27 if (
28 array_key_exists("FILE_ID", $arFields)
29 && is_array($arFields["FILE_ID"])
30 && (
31 !array_key_exists("MODULE_ID", $arFields["FILE_ID"])
32 || $arFields["FILE_ID"]["MODULE_ID"] == ''
33 )
34 )
35 $arFields["FILE_ID"]["MODULE_ID"] = "blog";
36
37 $prefix = "blog";
38 if($arFields["URL"] <> '')
39 $prefix .= "/".$arFields["URL"];
40
41 CFile::SaveForDB($arFields, "FILE_ID", $prefix);
42 }
43
44 if (
45 isset($arFields['FILE_ID']) &&
46 ( intval($arFields['FILE_ID']) == $arFields['FILE_ID'] )
47 )
48 {
49 $arInsert = $DB->PrepareInsert("b_blog_image", $arFields);
50
51 foreach ($arFields1 as $key => $value)
52 {
53 if ($arInsert[0] <> '')
54 $arInsert[0] .= ", ";
55 $arInsert[0] .= $key;
56 if ($arInsert[1] <> '')
57 $arInsert[1] .= ", ";
58 $arInsert[1] .= $value;
59 }
60
61 if ($arInsert[0] <> '')
62 {
63 $strSql =
64 "INSERT INTO b_blog_image(".$arInsert[0].") ".
65 "VALUES(".$arInsert[1].")";
66 $DB->Query($strSql);
67
68 $ID = intval($DB->LastID());
69
70 return $ID;
71 }
72 }
73 else
74 {
75 $GLOBALS["APPLICATION"]->ThrowException("Error Adding file by CFile::SaveForDB");
76 }
77
78 return False;
79 }
80
81 public static function Update($ID, $arFields)
82 {
83 global $DB;
84
85 $ID = intval($ID);
86 $arFields1 = array();
87 foreach ($arFields as $key => $value)
88 {
89 if (mb_substr($key, 0, 1) == "=")
90 {
91 $arFields1[mb_substr($key, 1)] = $value;
92 unset($arFields[$key]);
93 }
94 }
95 if (!CBlogImage::CheckFields("UPDATE", $arFields, $ID))
96 return false;
97 $strUpdate = $DB->PrepareUpdate("b_blog_image", $arFields);
98
99 foreach ($arFields1 as $key => $value)
100 {
101 if ($strUpdate <> '')
102 $strUpdate .= ", ";
103 $strUpdate .= $key."=".$value." ";
104 }
105 if ($strUpdate <> '')
106 {
107 $strSql =
108 "UPDATE b_blog_image SET ".
109 " ".$strUpdate." ".
110 "WHERE ID = ".$ID." ";
111 $DB->Query($strSql);
112
113 unset($GLOBALS["BLOG_IMAGE"]["BLOG_IMAGE_CACHE_".$ID]);
114
115 return $ID;
116 }
117
118 return False;
119 }
120
121 //*************** SELECT *********************/
122 public static function GetList($arOrder = Array("ID" => "DESC"), $arFilter = Array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array())
123 {
124 global $DB;
125
126 if (count($arSelectFields) <= 0)
127 $arSelectFields = array("ID", "FILE_ID", "POST_ID", "BLOG_ID", "USER_ID", "TITLE", "TIMESTAMP_X", "IMAGE_SIZE");
128
129 // FIELDS -->
131 "ID" => array("FIELD" => "G.ID", "TYPE" => "int"),
132 "FILE_ID" => array("FIELD" => "G.FILE_ID", "TYPE" => "int"),
133 "POST_ID" => array("FIELD" => "G.POST_ID", "TYPE" => "int"),
134 "BLOG_ID" => array("FIELD" => "G.BLOG_ID", "TYPE" => "int"),
135 "USER_ID" => array("FIELD" => "G.USER_ID", "TYPE" => "int"),
136 "TITLE" => array("FIELD" => "G.TITLE", "TYPE" => "string"),
137 "TIMESTAMP_X" => array("FIELD" => "G.TIMESTAMP_X", "TYPE" => "datetime"),
138 "IMAGE_SIZE" => array("FIELD" => "G.IMAGE_SIZE", "TYPE" => "int"),
139 "IS_COMMENT" => array("FIELD" => "G.IS_COMMENT", "TYPE" => "string"),
140 "COMMENT_ID" => array("FIELD" => "G.COMMENT_ID", "TYPE" => "int"),
141 );
142 // <-- FIELDS
143
144 $arSqls = CBlog::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields);
145
146 $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]);
147
148 if (is_array($arGroupBy) && count($arGroupBy)==0)
149 {
150 $strSql =
151 "SELECT ".$arSqls["SELECT"]." ".
152 "FROM b_blog_image G ".
153 " ".$arSqls["FROM"]." ";
154 if ($arSqls["WHERE"] <> '')
155 $strSql .= "WHERE ".$arSqls["WHERE"]." ";
156 if ($arSqls["GROUPBY"] <> '')
157 $strSql .= "GROUP BY ".$arSqls["GROUPBY"]." ";
158
159 //echo "!1!=".htmlspecialcharsbx($strSql)."<br>";
160
161 $dbRes = $DB->Query($strSql);
162 if ($arRes = $dbRes->Fetch())
163 return $arRes["CNT"];
164 else
165 return False;
166 }
167
168 $strSql =
169 "SELECT ".$arSqls["SELECT"]." ".
170 "FROM b_blog_image G ".
171 " ".$arSqls["FROM"]." ";
172 if ($arSqls["WHERE"] <> '')
173 $strSql .= "WHERE ".$arSqls["WHERE"]." ";
174 if ($arSqls["GROUPBY"] <> '')
175 $strSql .= "GROUP BY ".$arSqls["GROUPBY"]." ";
176 if ($arSqls["ORDERBY"] <> '')
177 $strSql .= "ORDER BY ".$arSqls["ORDERBY"]." ";
178
179 if (is_array($arNavStartParams) && intval($arNavStartParams["nTopCount"])<=0)
180 {
181 $strSql_tmp =
182 "SELECT COUNT('x') as CNT ".
183 "FROM b_blog_image G ".
184 " ".$arSqls["FROM"]." ";
185 if ($arSqls["WHERE"] <> '')
186 $strSql_tmp .= "WHERE ".$arSqls["WHERE"]." ";
187 if ($arSqls["GROUPBY"] <> '')
188 $strSql_tmp .= "GROUP BY ".$arSqls["GROUPBY"]." ";
189
190 //echo "!2.1!=".htmlspecialcharsbx($strSql_tmp)."<br>";
191
192 $dbRes = $DB->Query($strSql_tmp);
193 $cnt = 0;
194 if ($arSqls["GROUPBY"] == '')
195 {
196 if ($arRes = $dbRes->Fetch())
197 $cnt = $arRes["CNT"];
198 }
199 else
200 {
201 $cnt = $dbRes->SelectedRowsCount();
202 }
203
204 $dbRes = new CDBResult();
205 $dbRes->NavQuery($strSql, $cnt, $arNavStartParams);
206 }
207 else
208 {
209 if (is_array($arNavStartParams) && intval($arNavStartParams["nTopCount"]) > 0)
210 $strSql .= "LIMIT ".intval($arNavStartParams["nTopCount"]);
211
212 //echo "!3!=".htmlspecialcharsbx($strSql)."<br>";
213
214 $dbRes = $DB->Query($strSql);
215 }
216
217 return $dbRes;
218 }
219}
static PrepareSql(&$arFields, $arOrder, &$arFilter, $arGroupBy, $arSelectFields, $obUserFieldsSql=false)
Определения blog.php:487
Определения blog_image.php:8
static CheckFields($ACTION, &$arFields, $ID=0)
Определения blog_image.php:12
Определения blog_image.php:6
static Add($arFields)
Определения blog_image.php:8
static GetList($arOrder=Array("ID"=> "DESC"), $arFilter=Array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения blog_image.php:122
static Update($ID, $arFields)
Определения blog_image.php:81
$arFields
Определения dblapprove.php:5
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
if($ajaxMode) $ID
Определения get_user.php:27
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $DB
Определения cron_frame.php:29
if(empty($signedUserToken)) $key
Определения quickway.php:257
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936
$arRes
Определения options.php:104
$GLOBALS['_____370096793']
Определения update_client.php:1
$arFilter
Определения user_search.php:106
$dbRes
Определения yandex_detail.php:168