public function actionCreatesize() { /*if ($this->checkAccess) { call_user_func($this->checkAccess, $this->id); }*/ /* @var $model \yii\db\ActiveRecord */ $model = new Sizes(['scenario' => $this->createScenario]); $model->load(Yii::$app->getRequest()->getBodyParams(), ''); if ($model->save()) { $response = Yii::$app->getResponse(); $request = Yii::$app->getRequest(); $response->setStatusCode(200); $id = implode(',', array_values($model->getPrimaryKey(true))); $url = parse_url($request->referrer, PHP_URL_PATH); $matches = array(); $reg = preg_match('/(\\d+)$/', $url, $matches); $work_id = (int) $matches[0]; $relation = new WorksSizes(); $relation->work_id = $work_id; $relation->size_id = $id; $relation->save(); $response->getHeaders()->set('Location', Url::toRoute(['view', 'id' => $id], true)); } elseif (!$model->hasErrors()) { throw new ServerErrorHttpException('Failed to create the object for unknown reason.'); } return $model; }
public function set($plantID, $sizeArray) { $sizes = Sizes::all(); $sizeArray = $this->filterArray($sizeArray); $cleanSizes = $this->cleanModelArray($sizes); foreach ($sizeArray as $size) { if (is_numeric(array_search($size, $cleanSizes))) { $newSize = new PlantSize(); $newSize->plant_id = $plantID; $newSize->size_id = array_search($size, $cleanSizes) + 1; $newSize->save(); } } }