[Added trusted peers and aliases Adrian Georgescu **20070309151032 ] hunk ./provisioning.phtml 9 + hunk ./provisioning.phtml 16 -$perm->check("rates"); +$perm->check("admin"); hunk ./provisioning.phtml 23 -global $CDRTool; - -if ($CDRTool['filter']['aNumber']) { - $layout->showHeader(); - $layout->showTopMenuSubscriber(); -} else { - $layout->showTopMenu(); -} - -$rType=$_REQUEST['rType']; - -if ($rType=='enum') { - $ENUMmappings = new ENUMmappings(); - - $filters = array('number' => trim($_REQUEST['number_filter']), - 'type' => trim($_REQUEST['type_filter']), - 'mapto' => trim($_REQUEST['mapto_filter']), - 'sortBy' => trim($_REQUEST['sortBy']), - 'sortOrder' => trim($_REQUEST['sortOrder']), - 'soapEngineId' => trim($_REQUEST['soapEngineId']) - ); - - $next = $_REQUEST['next']; - printf ("

ENUM mappings SIP accounts

",$_SERVER['PHP_SELF']); - $ENUMmappings->listRecords($filters,$next); -} else { - - $SIPAccounts = new SIPAccounts(); - - $filters = array('username' => trim($_REQUEST['username_filter']), - 'domain' => trim($_REQUEST['domain_filter']), - 'fullname' => trim($_REQUEST['fullname_filter']), - 'sortBy' => trim($_REQUEST['sortBy']), - 'sortOrder' => trim($_REQUEST['sortOrder']), - 'soapEngineId' => trim($_REQUEST['soapEngineId']) - ); - - $next = $_REQUEST['next']; +$layout->showTopMenu(); hunk ./provisioning.phtml 25 - printf ("

SIP accounts ENUM mappings

",$_SERVER['PHP_SELF']); - $SIPAccounts->listRecords($filters,$next); -} +$SOAPEngine = new SOAPEngine($_REQUEST['service']); +$recordsClass = $SOAPEngine->recordsClass; +$RECORDS = new $recordsClass(&$SOAPEngine); +$RECORDS->listRecords(); hunk ./provisioning.phtml 38 - function SOAPEngine ($port) { - global $DATASOURCES; - - global $perm; - $this->perm = $perm; + var $services=array( + 'sip' =>array('recordsClass' => 'SipAccounts', + 'soapClass' => 'WebService_NGNPro_SipPort' + ), + 'sipa' =>array('recordsClass' => 'SipAliases', + 'soapClass' => 'WebService_NGNPro_SipPort' + ), + 'enum'=>array('recordsClass' => 'EnumMappings', + 'soapClass' => 'WebService_NGNPro_EnumPort' + ), + 'trusted'=>array('recordsClass' => 'TrustedPeers', + 'soapClass' => 'WebService_NGNPro_SipPort' + ) + ); hunk ./provisioning.phtml 53 + function SOAPEngine ($service) { hunk ./provisioning.phtml 57 - if (($DATASOURCES[$this->cdr_source]['SOAPUsername'] && - $DATASOURCES[$this->cdr_source]['SOAPPassword'] && - $DATASOURCES[$this->cdr_source]['SOAPURL'] ) || (is_array($this->soapEngines) && $this->perm->have_perm('admin')) ) { - - if ($this->perm->have_perm('admin') && $this->soapEngines) { - if (!$_REQUEST['soapEngineId']) { - $_soapids=array_keys($this->soapEngines); - $this->soapEngineId = $_soapids[0]; - } else { - $this->soapEngineId = $_REQUEST['soapEngineId']; - } - - $this->SOAPlogin = array( - "username" => $this->soapEngines[$this->soapEngineId]['username'], - "password" => $this->soapEngines[$this->soapEngineId]['password'], - "admin" => true - ); - $this->SOAPurl=$this->soapEngines[$this->soapEngineId]['url']; - - } else { - $this->SOAPlogin = array( - "username" => $DATASOURCES[$this->cdr_source]['SOAPUsername'], - "password" => $DATASOURCES[$this->cdr_source]['SOAPPassword'], - "admin" => $DATASOURCES[$this->cdr_source]['SOAPAdmin'] - ); - $this->SOAPurl = $DATASOURCES[$this->cdr_source]['SOAPURL']; + if (is_array($this->soapEngines)) { + + if (!$service) { + $_services = array_keys($this->services); + $_soapids = array_keys($this->soapEngines); + $service = $_soapids[0].":".$_services[0]; hunk ./provisioning.phtml 64 + + $this->service=$service; + + $_els=explode(":",$service); + + $this->soapEngineId = $_els[0]; + $this->soapEnginePort = $_els[1]; + $this->recordsClass = $this->services[$this->soapEnginePort]['recordsClass']; + $this->soapClass = $this->services[$this->soapEnginePort]['soapClass']; + + $this->SOAPlogin = array( + "username" => $this->soapEngines[$this->soapEngineId]['username'], + "password" => $this->soapEngines[$this->soapEngineId]['password'], + "admin" => true + ); + + $this->SOAPurl=$this->soapEngines[$this->soapEngineId]['url']; hunk ./provisioning.phtml 83 - - $this->selectPort($port); + + + $this->soapclient = new $this->soapClass($this->SOAPurl); hunk ./provisioning.phtml 94 - - } - - function selectPort ($port='Sip') { - if ($port=='Sip') { - $this->soapclient = new WebService_NGNPro_SipPort($this->SOAPurl); - } else if ($port='Enum') { - $this->soapclient = new WebService_NGNPro_EnumPort($this->SOAPurl); - } hunk ./provisioning.phtml 97 - - if ($this->perm->have_perm('admin')) { - $selected_soapEngine[$this->soapEngineId]='selected'; - print " Platform:"; - printf ("",$_SERVER['PHP_SELF']); + $j=0; + foreach (array_keys($this->soapEngines) as $_engine) { + if ($j) printf ("