- $model = '{ "listen": { "__type": "radio" } }';
- $content = array('listen' => array('val' => ($user->flags & USER_FLAG_ISOLAUTH ? "2" :
- ($user->flags & USER_FLAG_LISTAUTH ? "1" : "0")),
- 'cur' => ($user->flags_cur & USER_FLAG_ISOLAUTH ? "2" :
- ($user->flags_cur & USER_FLAG_LISTAUTH ? "1" : "0"))));
-
- $ret .= sprintf('g_prefsf.fields_descr_set(JSON.parse(\'%s\'));', $model);
+ $model = array('listen' => array('__type' => 'radio'));
+ $content = array('listen' => array('val' => ($user->flags_db & USER_FLAG_ISOLAUTH ? "2" :
+ ($user->flags_db & USER_FLAG_LISTAUTH ? "1" : "0")),
+ 'cur' => ($user->flags & USER_FLAG_ISOLAUTH ? "2" :
+ ($user->flags & USER_FLAG_LISTAUTH ? "1" : "0"))));
+ if ($user->is_supp_custom()) {
+ $comps = $user->rec->supp_comp_get_array();
+ $model['fg'] = array('__type' => 'fields', 'r' => array('__type' => 'value'),
+ 'g' => array('__type' => 'value'), 'b' => array('__type' => 'value'));
+ $model['bg'] = array('__type' => 'fields', 'r' => array('__type' => 'value'),
+ 'g' => array('__type' => 'value'), 'b' => array('__type' => 'value'));
+ $content['fg'] = array('r' => array('val' => $comps['fg']['r'], 'cur' => $comps['fg']['r']),
+ 'g' => array('val' => $comps['fg']['g'], 'cur' => $comps['fg']['g']),
+ 'b' => array('val' => $comps['fg']['b'], 'cur' => $comps['fg']['b']));
+ $content['bg'] = array('r' => array('val' => $comps['bg']['r'], 'cur' => $comps['bg']['r']),
+ 'g' => array('val' => $comps['bg']['g'], 'cur' => $comps['bg']['g']),
+ 'b' => array('val' => $comps['bg']['b'], 'cur' => $comps['bg']['b']));
+ }
+
+ $ret .= sprintf('g_prefsf.fields_descr_set(JSON.parse(\'%s\'));', json_encode($model));