Changeset 3335
- Timestamp:
- 12/17/06 21:34:55 (5 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
freepbx/trunk/amp_conf/htdocs/admin/modules/core/functions.inc.php
r3254 r3335 191 191 // extensions_custom.conf 192 192 $ext->add($context, $exten, '', new ext_setvar('FROM_DID',$exten)); 193 194 if (!empty($item['mohclass']) && trim($item['mohclass']) != 'default') {195 $ext->add($context, $exten, '', new ext_setmusiconhold($item['mohclass']));196 }197 193 198 194 // If we require RINGING, signal it as soon as we enter. … … 303 299 $ext->add($context, $exten, '', new ext_setvar('FROM_DID',$exten)); 304 300 305 if (!empty($item['mohclass']) && trim($item['mohclass']) != 'default') {306 $ext->add($context, $exten, '', new ext_setmusiconhold($item['mohclass']));307 }308 301 309 302 if ($item['faxexten'] != "default") { … … 388 381 if(strpos($exten['args'],"INTRACOMPANYROUTE") !== false) 389 382 $ext->add($outrt['application'], $exten['extension'], '', new ext_setvar("INTRACOMPANYROUTE",substr($exten['args'],18))); 390 if(strpos($exten['args'],"MOHCLASS") !== false)391 $ext->add($outrt['application'], $exten['extension'], '', new ext_setvar("MOHCLASS",substr($exten['args'],9)));392 383 if(strpos($exten['args'],"dialout-trunk") !== false) 393 384 $ext->add($outrt['application'], $exten['extension'], '', new ext_macro($exten['args'])); … … 495 486 if (empty($existing)) { 496 487 $destination=${$goto_indicate0.'0'}; 497 $sql="INSERT INTO incoming (cidnum,extension,destination,faxexten,faxemail,answer,wait,privacyman,alertinfo, channel, ringing , mohclass) values ('$cidnum','$extension','$destination','$faxexten','$faxemail','$answer','$wait','$privacyman','$alertinfo', '$channel', '$ringing', '$mohclass')";488 $sql="INSERT INTO incoming (cidnum,extension,destination,faxexten,faxemail,answer,wait,privacyman,alertinfo, channel, ringing) values ('$cidnum','$extension','$destination','$faxexten','$faxemail','$answer','$wait','$privacyman','$alertinfo', '$channel', '$ringing')"; 498 489 sql($sql); 499 490 } else { … … 1114 1105 1115 1106 //insert into users table 1116 $sql="INSERT INTO users (extension,password,name,voicemail,ringtimer,noanswer,recording,outboundcid,directdid,didalert,faxexten,faxemail,answer,wait,privacyman ,mohclass) values (\"";1107 $sql="INSERT INTO users (extension,password,name,voicemail,ringtimer,noanswer,recording,outboundcid,directdid,didalert,faxexten,faxemail,answer,wait,privacyman) values (\""; 1117 1108 $sql.= "$extension\", \""; 1118 1109 $sql.= isset($password)?$password:''; … … 1144 1135 $sql.= "\", \""; 1145 1136 $sql.= isset($privacyman)?$privacyman:''; 1146 $sql.= "\", \""; 1147 $sql.= isset($mohclass)?$mohclass:''; 1137 1148 1138 $sql.= "\")"; 1149 1139 sql($sql); … … 1254 1244 1255 1245 function core_directdid_list(){ 1256 $sql = "SELECT extension, directdid, didalert, mohclass,faxexten, faxemail, answer, wait, privacyman FROM users WHERE directdid IS NOT NULL AND directdid != ''";1246 $sql = "SELECT extension, directdid, didalert, faxexten, faxemail, answer, wait, privacyman FROM users WHERE directdid IS NOT NULL AND directdid != ''"; 1257 1247 return sql($sql,"getAll",DB_FETCHMODE_ASSOC); 1258 1248 } … … 1840 1830 1841 1831 1842 function core_routing_add($name, $patterns, $trunks, $method, $pass, $emergency = "", $intracompany = "", $mohsilence = "") { 1843 1832 function core_routing_add($name, $patterns, $trunks, $method, $pass, $emergency = "", $intracompany = "") { 1844 1833 global $db; 1845 1834 … … 1922 1911 } 1923 1912 1924 // Next Priority (either first, second or third depending on above)1925 if(!empty($mohsilence) && trim($mohsilence) != 'default') {1926 $startpriority += 1;1927 $sql = "INSERT INTO extensions (context, extension, priority, application, args, descr) VALUES ";1928 $sql .= "('outrt-".$name."', ";1929 $sql .= "'".$pattern."', ";1930 $sql .= "'".$startpriority."', ";1931 $sql .= "'SetVar', ";1932 $sql .= "'MOHCLASS=".$mohsilence."', ";1933 $sql .= "'Do not play moh on this route')";1934 $result = $db->query($sql);1935 if(DB::IsError($result)) {1936 die($result->getMessage());1937 }1938 }1939 1940 1913 $first_trunk = 1; 1941 1914 foreach ($trunks as $priority => $trunk) { … … 2019 1992 } 2020 1993 2021 function core_routing_edit($name, $patterns, $trunks, $pass, $emergency="", $intracompany = "" , $mohsilence="") {1994 function core_routing_edit($name, $patterns, $trunks, $pass, $emergency="", $intracompany = "") { 2022 1995 core_routing_del($name); 2023 core_routing_add($name, $patterns, $trunks,"edit", $pass, $emergency, $intracompany , $mohsilence);1996 core_routing_add($name, $patterns, $trunks,"edit", $pass, $emergency, $intracompany); 2024 1997 } 2025 1998 … … 2172 2145 } 2173 2146 return $intracompany; 2174 }2175 2176 //get mohsilence routing status for this route2177 function core_routing_getroutemohsilence($route) {2178 2179 global $db;2180 $sql = "SELECT DISTINCT args FROM extensions WHERE context = 'outrt-".$route."' AND (args LIKE 'MOHCLASS%') ";2181 $results = $db->getOne($sql);2182 if(DB::IsError($results)) {2183 die($results->getMessage());2184 }2185 if (preg_match('/^.*=(.*)/', $results, $matches)) {2186 $mohsilence = $matches[1];2187 } else {2188 $mohsilence = "";2189 }2190 return $mohsilence;2191 2147 } 2192 2148 … … 2283 2239 $currentcomponent->setoptlistopts('faxdestoptions', 'sort', false); 2284 2240 2285 if (function_exists('music_list')) {2286 $tresults = music_list("/var/lib/asterisk/mohmp3");2287 if (isset($tresults[0])) {2288 foreach ($tresults as $tresult) {2289 $currentcomponent->addoptlistitem('mohclass', $tresult, $tresult);2290 }2291 $currentcomponent->setoptlistopts('mohclass', 'sort', false);2292 }2293 }2294 2295 2241 //get unique devices to finishoff faxdestoptions list 2296 2242 $devices = core_devices_list(); … … 2316 2262 // Ensure variables possibly extracted later exist 2317 2263 $name = $directdid = $didalert = $outboundcid = $answer = null; 2318 $record_in = $record_out = $faxexten = $faxemail = $mohclass =null;2264 $record_in = $record_out = $faxexten = $faxemail = null; 2319 2265 2320 2266 // Init vars from $_REQUEST[] … … 2383 2329 $currentcomponent->addjsfunc('onsubmit()', "\treturn checkBlankUserPwd();\n", 9); 2384 2330 } 2385 $currentcomponent->addguielem($section, new gui_textbox('name', $name, 'Display Name', 'The caller id name for calls from this user will be set to this name. Only enter the name, NOT the number.', '!isCallerID()', $msgInvalid DispName, false));2331 $currentcomponent->addguielem($section, new gui_textbox('name', $name, 'Display Name', 'The caller id name for calls from this user will be set to this name. Only enter the name, NOT the number.', '!isCallerID()', $msgInvalidOutboundCID, false)); 2386 2332 2387 2333 $section = 'Extension Options'; 2388 2334 $currentcomponent->addguielem($section, new gui_textbox('directdid', $directdid, 'Direct DID', "The direct DID that is associated with this extension. The DID should be in the same format as provided by the provider (e.g. full number, 4 digits for 10x4, etc).<br><br>Format should be: <b>XXXXXXXXXX</b><br><br>Leave this field blank to disable the direct DID feature for this extension. All non-numeric characters will be stripped."), 3); 2389 2335 $currentcomponent->addguielem($section, new gui_textbox('didalert', $didalert, 'DID Alert Info', "Alert Info can be used for distinctive ring on SIP phones. Set this value to the desired Alert Info to be sent to the phone when this DID is called. Leave blank to use default values. Will have no effect if no Direct DID is set")); 2390 if (function_exists('music_list')) {2391 $currentcomponent->addguielem($section, new gui_selectbox('mohclass', $currentcomponent->getoptlist('mohclass'), $mohclass, 'Music on Hold', "Set the MoH class that will be used for calls that come in on this Direct DID. For example, choose a type appropriate for a originating country which may have announcements in their language. Only effects MoH class when the call came in from the Direct DID.", false));2392 }2393 2336 $currentcomponent->addguielem($section, new gui_textbox('outboundcid', $outboundcid, 'Outbound CID', "Overrides the caller id when dialing out a trunk. Any setting here will override the common outbound caller id set in the Trunks admin.<br><br>Format: <b>\"caller name\" <#######></b><br><br>Leave this field blank to disable the outbound callerid feature for this user.", '!isCallerID()', $msgInvalidOutboundCID, true)); 2394 2337 … … 2691 2634 core_devices_add($deviceid,$tech,$devinfo_dial,$devicetype,$deviceuser,$description,$emergency_cid); 2692 2635 needreload(); 2693 redirect_standard_continue(); 2636 if ($deviceuser != 'new') { 2637 redirect_standard_continue(); 2638 } 2694 2639 break; 2695 2640 case "del": 2696 2641 core_devices_del($extdisplay); 2697 2642 needreload(); 2698 redirect_standard_continue(); 2643 if ($deviceuser != 'new') { 2644 redirect_standard_continue(); 2645 } 2699 2646 break; 2700 2647 case "edit": //just delete and re-add
