/** * Возвращает массив объектов с информацией об открытых для импортирования столбцах таблицы */ public function getAvailableColumns($table) { //var_dump(ShopProducts::model()->attributes);die; $schema = ShopProducts::model()->tableSchema; $tech_columns = array('id' => 'id', 'category_id' => 'category_id', 'created_at' => 'created_at', 'created_by' => 'created_by', 'modified_at' => 'modified_at', 'modified_by' => 'modified_by'); $columns = array_values(array_diff_key($schema->columns, $tech_columns)); $firstLine = array_map(function ($element) { return $element->comment; }, $columns); $exampleLine = array_map(function ($element) { return $element->name; }, $columns); $exampleLine = array_flip($exampleLine); var_dump($firstLine + $exampleLine); var_dump($firstLine); //die; var_dump($exampleLine); //die; var_dump($columns); die; return $columns; }
public function actionUploadFromUrl($id) { if (Yii::app()->request->isPostRequest && Yii::app()->request->isAjaxRequest) { $params = Yii::app()->request->getPost('RemoteFileForm'); if (!$params) { echo CJSON::encode(array('error' => Yii::t('app', 'Не удается выполнить операцию. Обновите страницу и попробуйте ещё раз.'))); Yii::app()->end(); } $product = ShopProducts::model()->findByPk($id); if (!$product) { echo CJSON::encode(array('error' => Yii::t('app', 'Не удается найти товар.'))); Yii::app()->end(); } $model = new ShopProductsImages(); $model->product_id = $id; $attributes = $model->uploadImageFromUrl($params['remotefile']); if (isset($attributes['error'])) { echo CJSON::encode(array('error' => $attributes['error'])); Yii::app()->end(); } //var_dump($attributes)die; $model->attributes = $attributes; if (!$model->save()) { echo CJSON::encode(array('error' => Yii::t('app', 'Ошибка при сохранении данных.'))); Yii::app()->end(); } echo CJSON::encode(array('error' => false)); Yii::app()->end(); } echo CJSON::encode(array('error' => Yii::t('app', 'Некорректный запрос.'))); Yii::app()->end(); }