Exemple #1
0
 protected function actionSaveState($params)
 {
     //close writing to session so other concurrent requests won't be locked out.
     GO::session()->closeWriting();
     if (isset($params['values'])) {
         $values = json_decode($params['values'], true);
         if (!is_array($values)) {
             trigger_error("Invalid value for Core::actionSaveState: " . var_export($params, true), E_USER_NOTICE);
         } else {
             foreach ($values as $name => $value) {
                 $state = \GO\Base\Model\State::model()->findByPk(array('name' => $name, 'user_id' => GO::user()->id));
                 if (!$state) {
                     $state = new \GO\Base\Model\State();
                     $state->name = $name;
                 }
                 $state->value = $value;
                 $state->save();
             }
         }
     }
     $response['success'] = true;
     echo json_encode($response);
 }