function content_56854e7bdd6f5($_smarty_tpl)
    {
        ?>
<div class="container-fluid" id="AsteriskServerDetails"><div class="widget_header row-fluid"><div class="span8"><h3><?php 
        echo vtranslate('LBL_PBXMANAGER', $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
        ?>
</h3></div><?php 
        $_smarty_tpl->tpl_vars['MODULE_MODEL'] = new Smarty_variable(Settings_PBXManager_Module_Model::getCleanInstance(), null, 0);
        ?>
<div class="span4"><div class="pull-right"><button class="btn editButton" data-url='<?php 
        echo $_smarty_tpl->tpl_vars['MODULE_MODEL']->value->getEditViewUrl();
        ?>
&mode=showpopup&id=<?php 
        echo $_smarty_tpl->tpl_vars['RECORD_ID']->value;
        ?>
' type="button" title="<?php 
        echo vtranslate('LBL_EDIT', $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
        ?>
"><strong><?php 
        echo vtranslate('LBL_EDIT', $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
        ?>
</strong></button></div></div></div><hr><div class="contents row-fluid"><table class="table table-bordered table-condensed themeTableColor"><thead><tr class="blockHeader"><th colspan="2" class="mediumWidthType"><span class="alignMiddle"><?php 
        echo vtranslate('LBL_PBXMANAGER_CONFIG', $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
        ?>
</span></th></tr></thead><tbody><?php 
        $_smarty_tpl->tpl_vars['FIELDS'] = new Smarty_variable(PBXManager_PBXManager_Connector::getSettingsParameters(), null, 0);
        $_smarty_tpl->tpl_vars['FIELD_TYPE'] = new Smarty_Variable();
        $_smarty_tpl->tpl_vars['FIELD_TYPE']->_loop = false;
        $_smarty_tpl->tpl_vars['FIELD_NAME'] = new Smarty_Variable();
        $_from = $_smarty_tpl->tpl_vars['FIELDS']->value;
        if (!is_array($_from) && !is_object($_from)) {
            settype($_from, 'array');
        }
        foreach ($_from as $_smarty_tpl->tpl_vars['FIELD_TYPE']->key => $_smarty_tpl->tpl_vars['FIELD_TYPE']->value) {
            $_smarty_tpl->tpl_vars['FIELD_TYPE']->_loop = true;
            $_smarty_tpl->tpl_vars['FIELD_NAME']->value = $_smarty_tpl->tpl_vars['FIELD_TYPE']->key;
            ?>
<tr><td width="25%"><label class="muted pull-right marginRight10px"><?php 
            echo vtranslate($_smarty_tpl->tpl_vars['FIELD_NAME']->value, $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
            ?>
</label></td><td style="border-left: none;"><span><?php 
            echo $_smarty_tpl->tpl_vars['RECORD_MODEL']->value->get($_smarty_tpl->tpl_vars['FIELD_NAME']->value);
            ?>
</span></td></tr><?php 
        }
        ?>
<input type="hidden" name="module" value="PBXManager"/><input type="hidden" name="action" value="SaveAjax"/><input type="hidden" name="parent" value="Settings"/><input type="hidden" class="recordid" name="id" value="<?php 
        echo $_smarty_tpl->tpl_vars['RECORD_ID']->value;
        ?>
"></tbody></table></div></div><br><div class="span8 alert alert-danger container-fluid"><?php 
        echo vtranslate('LBL_NOTE', $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
        ?>
<br><?php 
        echo vtranslate('LBL_PBXMANAGER_INFO', $_smarty_tpl->tpl_vars['QUALIFIED_MODULE']->value);
        ?>
</div><?php 
    }
Exemplo n.º 2
0
 public function save()
 {
     $db = PearDatabase::getInstance();
     $parameters = '';
     $selectedGateway = $this->get('gateway');
     $connector = new PBXManager_PBXManager_Connector();
     foreach ($connector->getSettingsParameters() as $field => $type) {
         $parameters[$field] = $this->get($field);
     }
     $this->set('parameters', Zend_Json::encode($parameters));
     $params = array($selectedGateway, $this->get('parameters'));
     $id = $this->getId();
     if ($id) {
         $query = 'UPDATE ' . self::tableName . ' SET gateway=?, parameters = ? WHERE id = ?';
         array_push($params, $id);
     } else {
         $query = 'INSERT INTO ' . self::tableName . '(gateway, parameters) VALUES(?, ?)';
     }
     $db->pquery($query, $params);
 }
Exemplo n.º 3
0
 public function process(Vtiger_Request $request)
 {
     $id = $request->get('id');
     $qualifiedModuleName = 'PBXManager';
     $recordModel = Settings_PBXManager_Record_Model::getCleanInstance();
     $recordModel->set('gateway', $qualifiedModuleName);
     if ($id) {
         $recordModel->set('id', $id);
     }
     $connector = new PBXManager_PBXManager_Connector();
     foreach ($connector->getSettingsParameters() as $field => $type) {
         $recordModel->set($field, $request->get($field));
     }
     $response = new Vtiger_Response();
     try {
         $recordModel->save();
         $response->setResult(true);
     } catch (Exception $e) {
         $response->setError($e->getMessage());
     }
     $response->emit();
 }
Exemplo n.º 4
0
 /**
  * Function to respond for incoming calls
  * @param <Vtiger_Request> $details 
  */
 public function respondToIncomingCall($details)
 {
     $current_user = vglobal('current_user');
     self::$NUMBERS = PBXManager_Record_Model::getUserNumbers();
     header("Content-type: text/xml; charset=utf-8");
     $response = '<?xml version="1.0" encoding="utf-8"?>';
     $response .= '<Response><Dial><Authentication>';
     $response .= 'Success</Authentication>';
     if (self::$NUMBERS) {
         foreach (self::$NUMBERS as $userId => $number) {
             $userInstance = Users_Privileges_Model::getInstanceById($userId);
             $current_user = $userInstance;
             $callPermission = Users_Privileges_Model::isPermitted('PBXManager', 'ReceiveIncomingCalls');
             if ($number != $details->get('callerIdNumber') && $callPermission) {
                 if (preg_match("/sip/", $number) || preg_match("/@/", $number)) {
                     $number = trim($number, "/sip:/");
                     $response .= '<Number>SIP/';
                     $response .= $number;
                     $response .= '</Number>';
                 } else {
                     $response .= '<Number>SIP/';
                     $response .= $number;
                     $response .= '</Number>';
                 }
             }
         }
     } else {
         $response .= '<ConfiguredNumber>empty</ConfiguredNumber>';
         $date = date('Y/m/d H:i:s');
         $params['callstatus'] = 'no-answer';
         $params['starttime'] = $date;
         $params['endtime'] = $date;
         $recordModel = PBXManager_Record_Model::getInstanceBySourceUUID($details->get('callUUID'));
         $recordModel->updateCallDetails($params);
     }
     $response .= '</Dial></Response>';
     echo $response;
 }
Exemplo n.º 5
0
Migration_Index_View::ExecuteQuery('ALTER TABLE vtiger_mail_accounts ADD COLUMN sent_folder VARCHAR(50)', array());
echo '<br>selected folder field added in mailmanager.<br>';
//97 ends
//Migrating PBXManager 5.4.0 to 6.x
if (!defined('INSTALLATION_MODE')) {
    $moduleInstance = Vtiger_Module_Model::getInstance('PBXManager');
    if (!$moduleInstance) {
        echo '<br>Installing PBX Manager starts<br>';
        installVtlibModule('PBXManager', 'packages/vtiger/mandatory/PBXManager.zip');
    } else {
        $result = $adb->pquery('SELECT server, port FROM vtiger_asterisk', array());
        $server = $adb->query_result($result, 0, 'server');
        $qualifiedModuleName = 'PBXManager';
        $recordModel = Settings_PBXManager_Record_Model::getCleanInstance();
        $recordModel->set('gateway', $qualifiedModuleName);
        $connector = new PBXManager_PBXManager_Connector();
        foreach ($connector->getSettingsParameters() as $field => $type) {
            $fieldValue = "";
            if ($field == "webappurl") {
                $fieldValue = "http://" . $server . ":";
            }
            if ($field == "vtigersecretkey") {
                $fieldValue = uniqid(rand());
            }
            $recordModel->set($field, $fieldValue);
        }
        $recordModel->save();
        $modules = array('Contacts', 'Accounts', 'Leads');
        $recordModel = new PBXManager_Record_Model();
        foreach ($modules as $module) {
            $moduleInstance = CRMEntity::getInstance($module);