setTPL("view_gpb.tpl"); $form = new HTML_QuickForm("NewForm"); //}}} function process_data($args) { global $db; global $tpl; global $ini; global $LU; if(isset($args['btnSubmitSel'])&&isset($args['sel_gpb_id'])) { $id = $args['sel_gpb_id']; $query = "SELECT * FROM `global_phone_book` WHERE gpb_id=$id"; $result = $db->query($query); if(handleError($result)) { $result->fetchInto($row); $tpl->assign('entry','true'); $tpl->assign('gpb_name',$row['gpb_name']); $tpl->assign('gpb_number',$row['gpb_number']); $tpl->assign('gpb_id',$row['gpb_id']); switch ($row['gpb_type']) { case 'P': $tpl->assign('gpb_type',"Private"); break; case 'B': $tpl->assign('gpb_type',"Business"); break; case 'O': $tpl->assign('gpb_type',"Other"); break; default: $tpl->assign('gpb_type',"No Type Assigned"); break; } } } if(isset($args['btnSubmitAuto'])&&isset($args['auto_gpb_name'])) { $name = $args['auto_gpb_name']; $query = "SELECT * FROM `global_phone_book` WHERE gpb_name=?"; $prepared_query = $db->prepare($query); $result = $db->execute($prepared_query,array($name)); if(handleError($result)) { $result->fetchInto($row); $tpl->assign('entry','true'); $tpl->assign('gpb_name',$row['gpb_name']); $tpl->assign('gpb_number',$row['gpb_number']); $tpl->assign('gpb_id',$row['gpb_id']); switch ($row['gpb_type']) { case 'P': $tpl->assign('gpb_type',"Private"); break; case 'B': $tpl->assign('gpb_type',"Business"); break; case 'O': $tpl->assign('gpb_type',"Other"); break; default: $tpl->assign('gpb_type',"No Type Assigned"); break; } } } if(isset($args['btnSubmitAutoNum'])&&isset($args['auto_gpb_number'])) { $number = $args['auto_gpb_number']; $query = "SELECT * FROM `global_phone_book` WHERE gpb_number=?"; $prepared_query = $db->prepare($query); $result = $db->execute($prepared_query,array($number)); if(handleError($result)) { $result->fetchInto($row); $tpl->assign('entry','true'); $tpl->assign('gpb_name',$row['gpb_name']); $tpl->assign('gpb_number',$row['gpb_number']); $tpl->assign('gpb_id',$row['gpb_id']); switch ($row['gpb_type']) { case 'P': $tpl->assign('gpb_type',"Private"); break; case 'B': $tpl->assign('gpb_type',"Business"); break; case 'O': $tpl->assign('gpb_type',"Other"); break; default: $tpl->assign('gpb_type',"No Type Assigned"); break; } } } if(isset($args['btnSubmitDial'])&&isset($args['gpb_id'])) { $id = intval($args['gpb_id']); $query = "SELECT * FROM `global_phone_book` WHERE gpb_id=$id"; $result = $db->query($query); if(handleError($result)) { $result->fetchInto($row); //print_r($row); $tpl->assign('entry','true'); $tpl->assign('gpb_name',$row['gpb_name']); $tpl->assign('gpb_number',$row['gpb_number']); $tpl->assign('gpb_id',$row['gpb_id']); switch ($row['gpb_type']) { case 'P': $tpl->assign('gpb_type',"Private"); break; case 'B': $tpl->assign('gpb_type',"Business"); break; case 'O': $tpl->assign('gpb_type',"Other"); break; default: $tpl->assign('gpb_type',"No Type Assigned"); break; } dial($ini,$LU->getProperty('user_phone'),$row['gpb_number'],false); } } } //{{{ add quickform elements $form->addElement('submit', 'btnSubmitSel', 'Submit Selection'); $form->addElement('submit', 'btnSubmitAuto', 'Submit Search'); $form->addElement('submit', 'btnSubmitAutoNum', 'Submit Search'); if($ini['Asterisk']['php_agi_enabled']) { $form->addElement('submit', 'btnSubmitDial', 'Dial Number'); } $sel_gpb_q = "SELECT * FROM `global_phone_book` WHERE 1 ORDER BY `gpb_name` ASC"; $sel_gpb_res = $db->query($sel_gpb_q); if (handleError($sel_gpb_res)) { if(0==$sel_gpb_res->numRows()) { $tpl->assign('no_gpb','true'); } else { $gpb_name_entries = array(); $gpb_number_entries = array(); while($sel_gpb_res->fetchInto($sel_gpb_rec)) { $gpb_name_entries[$sel_gpb_rec['gpb_id']] = $sel_gpb_rec['gpb_name']; $gpb_number_entries[$sel_gpb_rec['gpb_id']] = $sel_gpb_rec['gpb_number']; } $form->addElement('select','sel_gpb_id','Select Name',$gpb_name_entries,array('id'=>'sel_gpb_id')); $form->addElement('autocomplete','auto_gpb_name','Search for Name',$gpb_name_entries); $form->addElement('autocomplete','auto_gpb_number','Search for Number',$gpb_number_entries); } } //}}} //{{{ --- MAIN CODE --- if ($form->validate()) { $form->process('process_data','false'); } $tpl->display(&$form); //}}} ?>