$fields_table_edit="";
if(!empty($_POST["position"])) {
$n=count($_POST["position"]);
-foreach($_POST["position"] as $v =>$p) {$db::sql("UPDATE modules_uni_fields SET posit=? WHERE modul='$modul' AND id=?",[$n,$v]); $n--; }
+foreach($_POST["position"] as $v =>$p) {
+ $item = \yii_app\records\ModulesUniFields::find()->where(['and', ['modul' => $modul], ['id' => $v]])->one();
+ $item->posit = $n;
+ $item->save();
+// $db::sql("UPDATE modules_uni_fields SET posit=? WHERE modul='$modul' AND id=?",[$n,$v]);
+ $n--;
+}
$mess="Сохранили";
}
-$sel_group=get_sql_array("uni_status", "id", "name", " WHERE type='".$modul."_group' order by posit DESC");
-$data2=$db::getRows("SELECT * FROM modules_uni_fields WHERE modul='$modul' ORDER BY posit DESC");
+$sel_group=get_sql_array("uni_status", "id", "name", " WHERE type='".$modul."_group' order by posit DESC");
+$data2 = Yii::$app->db->createCommand("SELECT * FROM modules_uni_fields WHERE modul='$modul' ORDER BY posit DESC")->queryAll();
+//$data2=$db::getRows("SELECT * FROM modules_uni_fields WHERE modul='$modul' ORDER BY posit DESC");
if(count($data2)>0) {
if(!empty($id)) {
$where_sql="";
if(!empty($form_parametr["WHERE_SQL"])) $where_sql=$form_parametr["WHERE_SQL"];
-
-
-$q = "SELECT name,id FROM $table_sql WHERE id=? $where_sql LIMIT 1";
-$data = $db::getRows($q,[$id]);
+
+
+$q = "SELECT name,id FROM $table_sql WHERE id=:id $where_sql LIMIT 1";
+$data = Yii::$app->db->createCommand($q, [':id' => $id])->queryAll();
+//$data = $db::getRows($q,[$id]);
$n=count($data);
if($n>0) {
foreach ($data as $row) {
-if(!empty($id))
-$q = "SELECT *,v.id as id_value,v.val as val, o.group_id as group_id,o.name, o.image_config FROM modules_uni_fields as o
-LEFT JOIN uni_fields_value as v ON (o.id=v.field_id AND v.uni_id='$id') WHERE o.modul='$modul' ORDER BY o.posit DESC";
- else
- $q = "SELECT *,select_val as val FROM modules_uni_fields WHERE modul='$modul' ORDER BY posit DESC";
+if(!empty($id)) {
+ $q = \yii_app\records\ModulesUniFields::find()->alias('o')->select(['*', 'v.id as id_value', 'v.val as val', 'o.group_id as group_id', 'o.name', 'o.image_config'])
+ ->leftJoin('uni_fields_value as v', 'o.id = v.field_id AND v.uni_id = ' . $id)
+ ->where(['o.modul' => $modul])->orderBy(['o.posit' => SORT_DESC])->asArray();
+// $q = "SELECT *,v.id as id_value, v.val as val, o.group_id as group_id,o.name, o.image_config FROM modules_uni_fields as o
+//LEFT JOIN uni_fields_value as v ON (o.id=v.field_id AND v.uni_id='$id') WHERE o.modul='$modul' ORDER BY o.posit DESC";
+} else {
+ $q = \yii_app\records\ModulesUniFields::find()->select(['*', 'select_val as val'])->where(['modul' => $modul])
+ ->orderBy(['posit' => SORT_DESC])->asArray();
+// $q = "SELECT *,select_val as val FROM modules_uni_fields WHERE modul='$modul' ORDER BY posit DESC";
+}
if(empty($fields_edit)) {
-foreach($forma as $key_name => $massiv_k) $no_uni_fields[]=$key_name;
-$data = $db::getRows($q);
+foreach($forma as $key_name => $massiv_k) $no_uni_fields[]=$key_name;
+$data = $q->all();
+//$data = $db::getRows($q);
foreach ($data as $row) {
if(empty($row["val"]) and !empty($row["select_val"])) $row["val"]=$row["select_val"];
}
*/
-$item = $db::getRow("SELECT * FROM $table_sql WHERE $idname=? LIMIT 1",[$id]);
+$item = Yii::$app->db->createCommand("SELECT * FROM $table_sql WHERE $idname=:idname LIMIT 1", [':idname' => $id])->queryAll()[0] ?? '';
+//$item = $db::getRow("SELECT * FROM $table_sql WHERE $idname=? LIMIT 1",[$id]);
-/*заносим свойства для категории товара в массив*/
-$data = $db::getRows("SELECT id FROM products_cat_property WHERE cat_id=?",[$catid]);
+/*заносим свойства для категории товара в массив*/
+$data = \yii_app\records\ProductsCatProperty::find()->select(['id'])->where(['cat_id' => $catid])->asArray()->all();
+//$data = $db::getRows("SELECT id FROM products_cat_property WHERE cat_id=?",[$catid]);
foreach ($data as $row) $data_items[]=$row["id"];
/*заносим все характеристики в общий массив*/
-$data = $db::getRows("SELECT id,name,tip,parent_id FROM cat_property");
+$data = \yii_app\records\CatProperty::find()->select(['id', 'name', 'tip', 'parent_id'])->asArray()->all();
+//$data = $db::getRows("SELECT id,name,tip,parent_id FROM cat_property");
foreach ($data as $row) {
$cat_property[$row["id"]]=$row["name"];
if($row["tip"]==0) $select_all[$row["id"]]= $row["name"];
/*запрашиваем какие возможные свойства есть у товара в категории cat_id=$id*/
-$data = $db::getRows("SELECT cat_id,id FROM products_cat_property WHERE cat_id=?",[$catid]);
+$data = \yii_app\records\ProductsCatProperty::find()->select(['cat_id', 'id'])->where(['cat_id' => $catid])->asArray()->all();
+//$data = $db::getRows("SELECT cat_id,id FROM products_cat_property WHERE cat_id=?",[$catid]);
foreach ($data as $row){
$select[$row["id"]]=$cat_property[$row["id"]];
$selec[]=$row["cat_id"];
/*сохраняем даные свойств товара */
if(!empty($_POST["save"])) {
-// удаляем старые записи перед записью новых
-$db::sql("DELETE FROM products_property_value WHERE id=?",[$id]);
-foreach($_POST["in"] as $v =>$p) {
-if(!empty($p) and !empty($id)) $db::sql("INSERT IGNORE INTO products_property_value VALUES(?,?,?)",[$p,$id,'']);
-}
-
+ // удаляем старые записи перед записью новых
+ \yii_app\records\ProductsPropertyValue::deleteAll(['id' => $id]);
+ //$db::sql("DELETE FROM products_property_value WHERE id=?",[$id]);
+ foreach($_POST["in"] as $v =>$p) {
+ if(!empty($p) and !empty($id)) {
+ $item = new \yii_app\records\ProductsPropertyValue;
+ $item->property_id = $p;
+ $item->id = $id;
+ $item->val = '';
+ $item->save();
+// $db::sql("INSERT IGNORE INTO products_property_value VALUES(?,?,?)",[$p,$id,'']);
+ }
+ }
}
-/*запрашиваем даные свойств товара */
-$data = $db::getRows("SELECT * FROM products_property_value WHERE id=?",[$id]);
+/*запрашиваем даные свойств товара */
+$data = \yii_app\records\ProductsPropertyValue::find()->where(['id' => $id])->asArray()->all();
+//$data = $db::getRows("SELECT * FROM products_property_value WHERE id=?",[$id]);
foreach ($data as $row) $prop_val[$row["property_id"]]=$row["property_id"];
/*вывод свойств у товара*/
}
-if(!empty($modul_uni)) {
-
-$q = "SELECT v.val as val, o.name_eng as name_eng, o.type,o.attr, o.name,o.tip,o.sql_func,o.required,o.leftclass,o.class,o.placeholder,o.class_block,
-o.style, o.html, o.dostup_values,
-o.image_config FROM modules_uni_fields as o LEFT JOIN uni_fields_value as v ON o.id=v.field_id AND v.uni_id='$id' WHERE o.modul='$modul_uni'";
-echo "$q";
-
+if(!empty($modul_uni)) {
+$q = \yii_app\records\ModulesUniFields::find()->alias('o')
+ ->select(['v.val as val', 'o.name_eng as name_eng', 'o.type', 'o.attr', 'o.name', 'o.tip', 'o.sql_func', 'o.required',
+ 'o.leftclass', 'o.class', 'o.placeholder', 'o.class_block', 'o.style', 'o.html', 'o.dostup_values', 'o.image_config'])
+ ->leftJoin('uni_fields_value as v', 'o.id = v.field_id AND v.uni_id = ' . $id)
+ ->where(['o.modul' => $modul_uni])->orderBy(['o.posit' => SORT_DESC])->asArray();
+//$q = "SELECT v.val as val, o.name_eng as name_eng, o.type,o.attr, o.name,o.tip,o.sql_func,o.required,o.leftclass,o.class,o.placeholder,o.class_block,
+//o.style, o.html, o.dostup_values,
+//o.image_config FROM modules_uni_fields as o LEFT JOIN uni_fields_value as v ON o.id=v.field_id AND v.uni_id='$id' WHERE o.modul='$modul_uni'";
+//echo "$q";
-$data = $db::getRows($q);
+$data = $q->all();
+//$data = $db::getRows($q);
$form_field_uni = [];
foreach ($data as $row) {
//echo" ++ {$row["name_eng"]}={$row["val"]} ";
/////////
-
-$q = "SELECT *,v.val as val, o.name_eng as name_eng, o.type, o.required,o.attr, o.dostup_values, o.image_config FROM modules_uni_fields as o LEFT JOIN uni_fields_value as v ON (o.id=v.field_id AND v.uni_id=?) WHERE o.modul=? ";
-$data = $db::getRows($q,[$id,$modul_uni]);
+$data = \yii_app\records\ModulesUniFields::find()->alias('o')
+ ->select(['*', 'v.val as val', 'o.name_eng as name_eng', 'o.type', 'o.required', 'o.attr', 'o.dostup_values', 'o.image_config'])
+ ->leftJoin('uni_fields_value as v', 'o.id = v.field_id AND v.uni_id = ' . $id)
+ ->where(['o.modul' => $modul_uni])
+ ->asArray()->all();
+//$q = "SELECT *,v.val as val, o.name_eng as name_eng, o.type, o.required,o.attr, o.dostup_values, o.image_config FROM modules_uni_fields as o LEFT JOIN uni_fields_value as v ON (o.id=v.field_id AND v.uni_id=?) WHERE o.modul=? ";
+//$data = $db::getRows($q,[$id,$modul_uni]);
foreach ($data as $row) {
$attr=$row["attr"];
if($row["type"]=="multiple") { $val_2=explode(",",$row["val"]); $row["val"]=$val_2; $tip="array"; } else $val_err='';
//foreach($form_field_hide_array as $keys => $vals) { echo"<br>Скрываем поле $keys => $vals"; }
/////////
-
-$q = "SELECT name_eng FROM modules_uni_fields WHERE modul=?";
-$data = $db::getRows($q,[$modul_uni_fields]);
+$data = \yii_app\records\ModulesUniFields::find()->select(['name_eng'])->where(['modul' => $modul_uni_fields])->asArray()->all();
+//$q = "SELECT name_eng FROM modules_uni_fields WHERE modul=?";
+//$data = $db::getRows($q,[$modul_uni_fields]);
foreach ($data as $row) {
$form_field_hide_array[$row["name_eng"]]=$row["name_eng"];
//echo"<br>Скрываем поле {$row["name_eng"]} ";
function construct_modul_form_azea($modul) {
global /*$modul,*/$db,$h1,$group_menu,$uni_fields, $_CONFIG,$forma_sql_table;
-$data=$db::getRows("SELECT * FROM modules_uni_fields WHERE modul=? ORDER BY posit DESC",[$modul]);
+$data = \yii_app\records\ModulesUniFields::find()->where(['modul' => $modul])->orderBy(['posit' => SORT_DESC])->asArray()->all();
+//$data=$db::getRows("SELECT * FROM modules_uni_fields WHERE modul=? ORDER BY posit DESC",[$modul]);
foreach ($data as $row) {
$image_config=json_decode(empty($row["image_config"]) ? '{}' : $row["image_config"], true,JSON_UNESCAPED_UNICODE);
--- /dev/null
+<?php
+
+namespace yii_app\records;
+
+use Yii;
+
+/**
+ * This is the model class for table "modules_uni_fields".
+ *
+ * @property int $id
+ * @property string $modul
+ * @property string $name
+ * @property string $name_eng
+ * @property int $group_id
+ * @property string $type тип поля
+ * @property string $tip тип данных (число,массив,строка, текст,email,дататолкьо eng)
+ * @property string $select_val Список опций
+ * @property string $default_val
+ * @property string $sql_func SQL параметры для запроса в этом поле
+ * @property string $dostup_values Доступ только к определенным значениям в зависисомсти от перменной в сессии
+ * @property int $posit позиция, приоритет
+ * @property int $required Обязательное
+ * @property string $required_status обязательное для статусов воронки
+ * @property string $placeholder
+ * @property string $leftclass
+ * @property string $class
+ * @property string $class_block
+ * @property string $attr атрибуты внутри поля attr
+ * @property string $style
+ * @property string $html
+ * @property string $image_config
+ * @property int $api
+ * @property int $user_dostup Ограничить доступ к списку из настроек по пользователю
+ * @property string $date_add
+ * @property string $dostup_arr Доступы
+ * @property int $admin_id
+ */
+class ModulesUniFields extends \yii\db\ActiveRecord
+{
+ /**
+ * {@inheritdoc}
+ */
+ public static function tableName()
+ {
+ return 'modules_uni_fields';
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function rules()
+ {
+ return [
+ [['name', 'name_eng', 'group_id', 'tip', 'select_val', 'default_val', 'sql_func', 'dostup_values', 'posit', 'required_status', 'placeholder', 'leftclass', 'class', 'class_block', 'attr', 'style', 'html', 'image_config', 'user_dostup', 'date_add', 'dostup_arr', 'admin_id'], 'required'],
+ [['group_id', 'posit', 'required', 'api', 'user_dostup', 'admin_id'], 'integer'],
+ [['select_val', 'sql_func', 'dostup_values', 'attr', 'style', 'html', 'image_config', 'dostup_arr'], 'string'],
+ [['date_add'], 'safe'],
+ [['modul', 'type'], 'string', 'max' => 25],
+ [['name', 'placeholder'], 'string', 'max' => 150],
+ [['name_eng', 'tip'], 'string', 'max' => 55],
+ [['default_val', 'leftclass', 'class_block'], 'string', 'max' => 155],
+ [['required_status'], 'string', 'max' => 250],
+ [['class'], 'string', 'max' => 200],
+ ];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function attributeLabels()
+ {
+ return [
+ 'id' => 'ID',
+ 'modul' => 'Modul',
+ 'name' => 'Name',
+ 'name_eng' => 'Name Eng',
+ 'group_id' => 'Group ID',
+ 'type' => 'Type',
+ 'tip' => 'Tip',
+ 'select_val' => 'Select Val',
+ 'default_val' => 'Default Val',
+ 'sql_func' => 'Sql Func',
+ 'dostup_values' => 'Dostup Values',
+ 'posit' => 'Posit',
+ 'required' => 'Required',
+ 'required_status' => 'Required Status',
+ 'placeholder' => 'Placeholder',
+ 'leftclass' => 'Leftclass',
+ 'class' => 'Class',
+ 'class_block' => 'Class Block',
+ 'attr' => 'Attr',
+ 'style' => 'Style',
+ 'html' => 'Html',
+ 'image_config' => 'Image Config',
+ 'api' => 'Api',
+ 'user_dostup' => 'User Dostup',
+ 'date_add' => 'Date Add',
+ 'dostup_arr' => 'Dostup Arr',
+ 'admin_id' => 'Admin ID',
+ ];
+ }
+}