1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
blog_user_group.php
См. документацию.
1<?php
2
3require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/blog/general/blog_user_group.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 $arInsert = $DB->PrepareInsert("b_blog_user_group", $arFields);
26
27 foreach ($arFields1 as $key => $value)
28 {
29 if ($arInsert[0] <> '')
30 $arInsert[0] .= ", ";
31 $arInsert[0] .= $key;
32 if ($arInsert[1] <> '')
33 $arInsert[1] .= ", ";
34 $arInsert[1] .= $value;
35 }
36
37 if ($arInsert[0] <> '')
38 {
39 $strSql =
40 "INSERT INTO b_blog_user_group(".$arInsert[0].") ".
41 "VALUES(".$arInsert[1].")";
42 $DB->Query($strSql);
43
44 $ID = intval($DB->LastID());
45
46 return $ID;
47 }
48
49 return False;
50 }
51
52 public static function Update($ID, $arFields)
53 {
54 global $DB;
55
56 $ID = intval($ID);
57
58 if ($ID == 1 || $ID == 2)
59 return False;
60
61 $arFields1 = array();
62 foreach ($arFields as $key => $value)
63 {
64 if (mb_substr($key, 0, 1) == "=")
65 {
66 $arFields1[mb_substr($key, 1)] = $value;
67 unset($arFields[$key]);
68 }
69 }
70
72 return false;
73
74 $strUpdate = $DB->PrepareUpdate("b_blog_user_group", $arFields);
75
76 foreach ($arFields1 as $key => $value)
77 {
78 if ($strUpdate <> '')
79 $strUpdate .= ", ";
80 $strUpdate .= $key."=".$value." ";
81 }
82
83 if ($strUpdate <> '')
84 {
85 $strSql =
86 "UPDATE b_blog_user_group SET ".
87 " ".$strUpdate." ".
88 "WHERE ID = ".$ID." ";
89 $DB->Query($strSql);
90
91 unset($GLOBALS["BLOG_USER_GROUP"]["BLOG_USER_GROUP_CACHE_".$ID]);
92
93 return $ID;
94 }
95
96 return False;
97 }
98
99 //*************** SELECT *********************/
100 public static function GetList($arOrder = Array("ID" => "DESC"), $arFilter = Array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array())
101 {
102 global $DB;
103
104 if (count($arSelectFields) <= 0)
105 $arSelectFields = array("ID", "BLOG_ID", "NAME");
106
107 // FIELDS -->
109 "ID" => array("FIELD" => "G.ID", "TYPE" => "int"),
110 "BLOG_ID" => array("FIELD" => "G.BLOG_ID", "TYPE" => "int"),
111 "NAME" => array("FIELD" => "G.NAME", "TYPE" => "string"),
112 "USER2GROUP_ID" => array("FIELD" => "U2UG.ID", "TYPE" => "int", "FROM" => "INNER JOIN b_blog_user2user_group U2UG ON (G.ID = U2UG.USER_GROUP_ID AND G.BLOG_ID = U2UG.BLOG_ID)"),
113 "USER2GROUP_USER_ID" => array("FIELD" => "U2UG.USER_ID", "TYPE" => "int", "FROM" => "INNER JOIN b_blog_user2user_group U2UG ON (G.ID = U2UG.USER_GROUP_ID AND G.BLOG_ID = U2UG.BLOG_ID)"),
114 );
115 // <-- FIELDS
116
117 $arSqls = CBlog::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields);
118
119 $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]);
120
121 if (is_array($arGroupBy) && count($arGroupBy)==0)
122 {
123 $strSql =
124 "SELECT ".$arSqls["SELECT"]." ".
125 "FROM b_blog_user_group G ".
126 " ".$arSqls["FROM"]." ";
127 if ($arSqls["WHERE"] <> '')
128 $strSql .= "WHERE ".$arSqls["WHERE"]." ";
129 if ($arSqls["GROUPBY"] <> '')
130 $strSql .= "GROUP BY ".$arSqls["GROUPBY"]." ";
131
132 //echo "!1!=".htmlspecialcharsbx($strSql)."<br>";
133
134 $dbRes = $DB->Query($strSql);
135 if ($arRes = $dbRes->Fetch())
136 return $arRes["CNT"];
137 else
138 return False;
139 }
140
141 $strSql =
142 "SELECT ".$arSqls["SELECT"]." ".
143 "FROM b_blog_user_group G ".
144 " ".$arSqls["FROM"]." ";
145 if ($arSqls["WHERE"] <> '')
146 $strSql .= "WHERE ".$arSqls["WHERE"]." ";
147 if ($arSqls["GROUPBY"] <> '')
148 $strSql .= "GROUP BY ".$arSqls["GROUPBY"]." ";
149 if ($arSqls["ORDERBY"] <> '')
150 $strSql .= "ORDER BY ".$arSqls["ORDERBY"]." ";
151
152 if (is_array($arNavStartParams) && intval($arNavStartParams["nTopCount"])<=0)
153 {
154 $strSql_tmp =
155 "SELECT COUNT('x') as CNT ".
156 "FROM b_blog_user_group G ".
157 " ".$arSqls["FROM"]." ";
158 if ($arSqls["WHERE"] <> '')
159 $strSql_tmp .= "WHERE ".$arSqls["WHERE"]." ";
160 if ($arSqls["GROUPBY"] <> '')
161 $strSql_tmp .= "GROUP BY ".$arSqls["GROUPBY"]." ";
162
163 //echo "!2.1!=".htmlspecialcharsbx($strSql_tmp)."<br>";
164
165 $dbRes = $DB->Query($strSql_tmp);
166 $cnt = 0;
167 if ($arSqls["GROUPBY"] == '')
168 {
169 if ($arRes = $dbRes->Fetch())
170 $cnt = $arRes["CNT"];
171 }
172 else
173 {
174 // ТОЛЬКО ДЛЯ MYSQL!!! ДЛЯ ORACLE ДРУГОЙ КОД
175 $cnt = $dbRes->SelectedRowsCount();
176 }
177
178 $dbRes = new CDBResult();
179
180 //echo "!2.2!=".htmlspecialcharsbx($strSql)."<br>";
181
182 $dbRes->NavQuery($strSql, $cnt, $arNavStartParams);
183 }
184 else
185 {
186 if (is_array($arNavStartParams) && intval($arNavStartParams["nTopCount"]) > 0)
187 $strSql .= "LIMIT ".intval($arNavStartParams["nTopCount"]);
188
189 //echo "!3!=".htmlspecialcharsbx($strSql)."<br>";
190
191 $dbRes = $DB->Query($strSql);
192 }
193
194 return $dbRes;
195 }
196}
static PrepareSql(&$arFields, $arOrder, &$arFilter, $arGroupBy, $arSelectFields, $obUserFieldsSql=false)
Определения blog.php:487
static CheckFields($ACTION, &$arFields, $ID=0)
Определения blog_user_group.php:10
static Add($arFields)
Определения blog_user_group.php:8
static GetList($arOrder=Array("ID"=> "DESC"), $arFilter=Array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения blog_user_group.php:100
static Update($ID, $arFields)
Определения blog_user_group.php:52
$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