Exemplo n.º 1
0
 public function actionSettings()
 {
     array_pop($_POST);
     $arr = $_POST;
     if (Yii::app()->user->isGuest) {
         $this->message(0, Yii::t('default', 'loginfirst'), Yii::app()->createUrl('site/login'), 1);
     }
     $uid = zmf::uid();
     foreach ($arr as $key => $val) {
         $_k = zmf::filterInput($key, 't', 1);
         $_v = zmf::filterInput($val, 't', 1);
         $sinfo = UserSetting::model()->findByAttributes(array('stype' => $_k), "uid='{$uid}'");
         $model = new UserSetting();
         if (!$sinfo) {
             $_input = array('uid' => $uid, 'stype' => $_k, 'svalue' => $_v);
             $model->attributes = $_input;
             if ($model->validate()) {
                 $model->save();
             }
         } elseif ($sinfo->svalue != $_v) {
             $model->updateByPk($sinfo->id, array('svalue' => $_v));
         }
     }
     zmf::setFCache("userSettings{$uid}", $arr);
     $this->redirect(array('users/config'));
 }