예제 #1
0
 /**
  *  Load misc options
  */
 function load_opt_js()
 {
     if (IS_GUEST) {
         $this->opt_js = array_merge($this->opt_js, $this->opt_js_guest);
     } else {
         if (!empty($_COOKIE['opt_js'])) {
             $opt_js = Zend\Json\Json::decode($_COOKIE['opt_js'], Zend\Json\Json::TYPE_ARRAY);
             if (is_array($opt_js)) {
                 $this->opt_js = array_merge($this->opt_js, $opt_js);
             }
         }
     }
 }
 public function returnParserContentType($contentType)
 {
     if ($contentType === 'application/x-www-form-urlencoded') {
         return function ($input) {
             parse_str($input, $data);
             return $data;
         };
     } elseif ($contentType === 'application/json') {
         return function ($input) {
             $jsonDecoder = new \Zend\Json\Json();
             try {
                 return $jsonDecoder->decode($input, \Zend\Json\Json::TYPE_ARRAY);
             } catch (\Exception $e) {
                 return new ApiProblem(400, 'Data Parsing Error.');
             }
         };
     } elseif ($contentType === 'multipart/form-data') {
         return function ($input) {
             return $input;
         };
     }
     return function ($input) {
         return $input;
     };
 }
예제 #3
0
<?php

if (!defined('IN_AJAX')) {
    die(basename(__FILE__));
}
global $bf, $lang;
$user_id = (int) $this->request['user_id'];
$new_opt = Zend\Json\Json::decode($this->request['user_opt'], Zend\Json\Json::TYPE_ARRAY);
if (!$user_id or !($u_data = get_userdata($user_id))) {
    $this->ajax_die('invalid user_id');
}
if (!is_array($new_opt)) {
    $this->ajax_die('invalid new_opt');
}
foreach ($bf['user_opt'] as $opt_name => $opt_bit) {
    if (isset($new_opt[$opt_name])) {
        setbit($u_data['user_opt'], $opt_bit, !empty($new_opt[$opt_name]));
    }
}
DB()->query("UPDATE " . BB_USERS . " SET user_opt = {$u_data['user_opt']} WHERE user_id = {$user_id} LIMIT 1");
// Удаляем данные из кеша
cache_rm_user_sessions($user_id);
$this->response['resp_html'] = $lang['SAVED'];