public function actionEdit($id = null) { if ($id !== null) { $model = ThumbnailSize::findOne($id); } else { $model = new ThumbnailSize(); $model->loadDefaultValues(); } $post = \Yii::$app->request->post(); if ($model->load($post) && $model->validate()) { $save_result = $model->save(); if ($save_result === true) { Yii::$app->session->setFlash('info', Yii::t('app', 'Object saved')); $returnUrl = Yii::$app->request->get('returnUrl', ['index']); switch (Yii::$app->request->post('action', 'save')) { case 'next': return $this->redirect(['edit', 'returnUrl' => $returnUrl]); case 'back': return $this->redirect($returnUrl); default: return $this->redirect(Url::toRoute(['edit', 'id' => $model->id, 'returnUrl' => $returnUrl])); } } else { \Yii::$app->session->setFlash('error', Yii::t('app', 'Cannot update data')); } } return $this->render('edit', ['model' => $model]); }
public static function getByDemand($demand) { $sizes = explode('x', $demand); $size = static::findOne(['width' => $sizes[0], 'height' => $sizes[1]]); if ($size === null) { $size = new ThumbnailSize(); $size->loadDefaultValues(); $size->setAttributes(['width' => $sizes[0], 'height' => $sizes[1]]); $size->save(); } return $size; }