⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 settings.module

📁 最近在做软交换时研究的一个软交换的东东
💻 MODULE
📖 第 1 页 / 共 3 页
字号:
            <tr>              <td>" . _("Record OUTGOING:") . " </td>              <td>                <input type='radio' name='record_out' value='Always' " . $ro_always . "/> " . _("Always") . "                <input type='radio' name='record_out' value='Never' " . $ro_never . "/> " . _("Never") . "				                <input type='radio' name='record_out' value='Adhoc' " . $ro_on_demand . "/> " . _("On-Demand") . "              </td>            </tr>          </table>";      }    }    // javascript enable options    if (isset($_SESSION['ari_user']['voicemail_email']) &&          in_array('voicemail',array_keys($loaded_modules))) {      foreach ($_SESSION['ari_user']['voicemail_email'] as $key => $value) {        $var = "voicemail_email_$key";        $js_voicemail_email_disable .= "          document.ari_settings.$var.disabled = false;";        $js_voicemail_email_enable .= "          document.ari_settings.$var.disabled = true;";      }      $js_voicemail_script = "          if (document.ari_settings.voicemail_email_enable.checked) {            document.ari_settings.voicemail_email_address.style.backgroundColor = '#FFF';            document.ari_settings.voicemail_email_address.disabled = false;            document.ari_settings.voicemail_email_address.value='" . $voicemail_email_address . "';            document.ari_settings.voicemail_pager_address.style.backgroundColor = '#FFF';            document.ari_settings.voicemail_pager_address.disabled = false;            document.ari_settings.voicemail_pager_address.value='" . $voicemail_pager_address . "';            " . $js_voicemail_email_disable . "          }          else {            document.ari_settings.voicemail_email_address.style.backgroundColor = '#DDD';            document.ari_settings.voicemail_email_address.disabled = true;            document.ari_settings.voicemail_pager_address.style.backgroundColor = '#DDD';            document.ari_settings.voicemail_pager_address.disabled = true;            " . $js_voicemail_email_enable . "          }";    }    // build page content    $ret .= checkErrorMessage();    if ($_SESSION['ari_user']['admin_settings']) {      $headerText = _("Settings");    } else {      $headerText = sprintf(_("Settings for %s (%s)"),$displayname,$exten);    }    $ret .= $display->displayHeaderText($headerText);    $ret .= $display->displayLine();    $ret .= "      <SCRIPT LANGUAGE='JavaScript'>      <!-- Begin        function disable_fields() {          if (document.ari_settings.call_forward_enable.checked) {            document.ari_settings.call_forward_number.style.backgroundColor = '#FFF';            document.ari_settings.call_forward_number.disabled = false;          }          else {            document.ari_settings.call_forward_number.style.backgroundColor = '#DDD';            document.ari_settings.call_forward_number.disabled = true;          }          " . $js_voicemail_script . "        }      // End -->      </script>";    $ret .= "      " . $setLangText . "      <form class='settings' name='ari_settings' action='' method='GET'>        <input type=hidden name=m value=" . $m . ">        <input type=hidden name=f value='action'>        <input type=hidden name=a value='update'>        <br>        " . $set_call_forward_text . "        <br>        " . $set_voicemail_text . "        <br>        " . $set_callmonitor_text . "        <br>        <input name='submit' type='submit' value='" . _("Update") . "'>      </form>";    return $ret;  }  /*   * Sets Asterisk call forward setting   *   * @param $exten   *   Extension to modify   * @param $state   *   Call forward enable or disable   * @param $call_forward_number   *   Call forward number   */  function setCallForward($exten,$state,$call_forward_number) {    global $asterisk_manager_interface;    if ($state) {      $type_opt = "put";      $value_opt = $call_forward_number;    }    else {      $type_opt = "del";    }    $variable_opt = "CF";    $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database $type_opt $variable_opt $exten $value_opt\r\n\r\n");  }  /*   * Gets call forward number if set   *   * @param $exten   *   Extension to get information about   * @return $number   *   call forward number returned if set   */  function getCallForwardNumber($exten) {    global $asterisk_manager_interface;    $number = '';    $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database get CF $exten\r\n\r\n");    if (is_numeric($response)) {      $number = $response;    }    $stripped = preg_replace('/-|\(|\)|\s/','',$_COOKIE['ari_call_forward_number']);    if ($stripped==$number) {      $number = $_COOKIE['ari_call_forward_number'];    }    return $number;  }  /*   * Sets Asterisk call recording setting   *   * @param $exten   *   Extension to modify   * @param $direction   *   Call direction   * @param $state   *   State to set to   */  function setRecordSettings($exten,$state_in,$state_out) {    global $asterisk_manager_interface;    if (version_compare($this->getFreePBXVersion(), '1.10', '<')) {      if ($state_in=="Always") {        $type_opt = "put";        $value_opt = " " . "ENABLED";      }      elseif ($state_in=="Never") {        $type_opt = "put";        $value_opt = " " . "DISABLED";      }      else {        $type_opt = "del";        $value_opt = "";      }      $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database $type_opt RECORD-IN $exten $value_opt\r\n\r\n");      if ($state_out=="Always") {        $type_opt = "put";        $value_opt = " " . "ENABLED";      }      elseif ($state_out=="Never") {        $type_opt = "put";        $value_opt = " " . "DISABLED";      }      else {        $type_opt = "del";        $value_opt = "";      }      $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database $type_opt RECORD-OUT $exten $value_opt\r\n\r\n");    }    else {      $value_opt= "out=".$state_out."|in=".$state_in;      $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database put AMPUSER $exten/recording $value_opt\r\n\r\n");    }  }  /*   * Gets record settings for a protocol   *   * @param $table   *   Table to pull information from   * @param $exten   *   Extension to get information about   * @return $data   *   call monitor record settings    */  function getProtocolRecordSettings($table,$exten) {    global $asterisk_manager_interface;    $data = array();    if (version_compare($this->getFreePBXVersion(), '1.10', '<')) {      $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database get RECORD-IN $exten\r\n\r\n");      if (preg_match("/ENABLED/",$response)) {        $data['record_in'] = 'Always';      }      elseif (preg_match("/DISABLED/",$response)) {         $data['record_in'] = 'Never';      }      else {        $data['record_in'] = 'Adhoc';      }      $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database get RECORD-OUT $exten\r\n\r\n");      if (preg_match("/ENABLED/",$response)) {        $data['record_out'] = 'Always';      }      elseif (preg_match("/DISABLED/",$response)) {         $data['record_out'] = 'Never';      }      else {        $data['record_out'] = 'Adhoc';      }    }    else {      $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: database get AMPUSER $exten/recording\r\n\r\n");      if (strstr($response,"in=Always")) {        $data['record_in'] = 'Always';      }      elseif (strstr($response,"in=Never")) {         $data['record_in'] = 'Never';      }      else {        $data['record_in'] = 'Adhoc';      }      if (strstr($response,"out=Always")) {        $data['record_out'] = 'Always';      }      elseif (strstr($response,"out=Never")) {         $data['record_out'] = 'Never';      }      else {        $data['record_out'] = 'Adhoc';      }    }    return $data;  }  /*   * Gets record settings   *   * @param $exten   *   Extension to get information about   * @param $data   *   Reference to the variable to store the data in   */  function getRecordSettings($exten) {    // check protocol tables first    $data = $this->getProtocolRecordSettings($this->protocol_table,$exten);    return $data;  }  /*   * Reloads Asterisk Configuration   */  function reloadAsteriskVoicemail() {    global $asterisk_manager_interface;    $response = $asterisk_manager_interface->Command("Action: Command\r\nCommand: Reload app_voicemail.so\r\n\r\n");  }  /*   * Gets FreePBX Version   */  function getFreePBXVersion() {    if (isset($_SESSION['dbh_asterisk'])) {      $sql = "SELECT * FROM admin WHERE variable = 'version'";      $results = $_SESSION['dbh_asterisk']->getAll($sql);      if(DB::IsError($results)) {        $_SESSION['ari_error'] = $results->getMessage();      }      return $results[0][1];    }  }}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -