if (isset($interfaces)) { echo form::label(array('for' => 'externalxfer[route_details][interface]', 'hint' => 'Network interface/IP address to use'), 'Network Interface:'); echo form::dropdown('externalxfer[route_details][interface]', $interfaces); } ?> </div> <div class="field"> <?php echo form::label(array('for' => 'externalxfer[route_details][sipuri]', 'hint' => 'Format is user@domain'), 'SIP URI:'); echo form::input('externalxfer[route_details][sipuri]'); ?> </div> </div> <?php $xmpp = Package_Catalog::getPackageByName('xmpp'); if(isset($xmpp['installed']) && !empty($xmpp['installed']))// == Package_Manager::STATUS_INSTALLED) { ?> <div id="via_xmpp"> <div class="field"> <?php if (isset($xmpps)) { echo form::label(array('for' => 'externalxfer[route_details][xmpp]', 'hint' => 'XMPP to use'), 'XMPP:'); echo form::dropdown('externalxfer[route_details][xmpp]', $xmpps); } ?> </div> <div class="field"> <?php
protected function prepareUpdateView($baseModel = NULL) { $route_types = array(); $trunkList = array(); $interfaceList = array(); $xmppList = array(); if (class_exists('Trunk')) { $trunks = Doctrine::getTable('Trunk')->findAll(Doctrine::HYDRATE_ARRAY); foreach($trunks as $trunk) { $trunkList[$trunk['trunk_id']] = $trunk['name']; } if (!empty($trunkList)) { $route_types[ExternalXfer::TYPE_TRUNK] = 'via Trunk'; } } if (class_exists('SipInterface')) { $interfaces = Doctrine::getTable('SipInterface')->findAll(Doctrine::HYDRATE_ARRAY); foreach($interfaces as $interface) { $interfaceList[$interface['sipinterface_id']] = $interface['name']; } if (!empty($interfaceList)) { $route_types[ExternalXfer::TYPE_SIP] = 'via SIP URI'; } } if (class_exists('Xmpp')) { $xmpp = Package_Catalog::getPackageByName('xmpp'); if(isset($xmpp['installed']) && !empty($xmpp['installed']))// == Package_Manager::STATUS_INSTALLED) { $xmpps = Doctrine::getTable('Xmpp')->findAll(Doctrine::HYDRATE_ARRAY); foreach($xmpps as $xmpp) { $xmppList[$xmpp['xmpp_id']] = $xmpp['name']; } if(!empty($xmppList)) { $route_types[ExternalXfer::TYPE_XMPP] = 'via XMPP'; } } } if (empty($route_types)) { message::set('No Trunk, XMPP or Sip Interfaces avaliable to route external destinations through!'); $this->returnQtipAjaxForm(NULL); url::redirect(Router_Core::$controller); } $this->view->trunks = $trunkList; $this->view->interfaces = $interfaceList; $this->view->xmpps = $xmppList; $this->view->route_types = $route_types; parent::prepareUpdateView($baseModel); }