public function doConfigPageInit($page) { $request = $_REQUEST; $request['action'] = !empty($request['action']) ? $request['action'] : ""; switch ($page) { case 'directory': //check for ajax request and process that immediately if (isset($_REQUEST['ajaxgettr'])) { //got ajax request $opts = $opts = explode('|', urldecode($_REQUEST['ajaxgettr'])); if ($opts[0] == 'all') { echo directory_draw_entries_all_users($opts[1]); } else { if ($opts[0] != '') { $real_id = $opts[0]; $name = ''; $realname = $opts[1]; $audio = 'vm'; } else { $real_id = 'custom'; $name = $opts[1]; $realname = 'Custom Entry'; $audio = 'tts'; } echo directory_draw_entries_tr($opts[0], $real_id, $name, $realname, $audio, '', $opts[2]); } exit; } $requestvars = array('id', 'action', 'entries', 'newentries', 'def_dir', 'Submit'); foreach ($requestvars as $var) { switch ($var) { case 'def_dir': $rvars_def = false; break; default: $rvars_def = ''; break; } ${$var} = isset($_REQUEST[$var]) ? $_REQUEST[$var] : $rvars_def; } if (isset($Submit) && $Submit == 'Submit' && isset($def_dir) && $def_dir !== false) { directory_save_default_dir($def_dir); } break; } if ($page == 'directory') { //get variables for directory_details $requestvars = array('id', 'dirname', 'description', 'announcement', 'callid_prefix', 'alert_info', 'repeat_loops', 'repeat_recording', 'invalid_recording', 'invalid_destination', 'retivr', 'say_extension'); foreach ($requestvars as $var) { $vars[$var] = isset($_REQUEST[$var]) ? $_REQUEST[$var] : null; } $action = isset($_REQUEST['action']) ? $_REQUEST['action'] : null; $entries = isset($_REQUEST['entries']) ? $_REQUEST['entries'] : null; //$entries=(($entries)?array_values($entries):'');//reset keys switch ($action) { case 'edit': //get real dest $vars['invalid_destination'] = $_REQUEST[$_REQUEST['goto0'] . '0']; $vars['id'] = directory_save_dir_details($vars); \directory_save_dir_entries($vars['id'], $entries); $this_dest = directory_getdest($vars['id']); \fwmsg::set_dest($this_dest[0]); needreload(); $_REQUEST['id'] = $vars['id']; break; case 'delete': directory_delete($vars['id']); needreload(); break; } } }
function directory_draw_entries_all_users($id) { $html = ''; foreach (core_users_list() as $user) { $html .= directory_draw_entries_tr($id, $user[0], '', $user[1], 'vm', '', $id++, true); } return $html; }