[Customer related functionality and general fixes Adrian Georgescu **20070913173139] hunk ./provisioning/provisioning_logic.phtml 535 - if (!$loginCredentials['reseller'] && $this->soapEngines[$this->soapEngineId]['impersonate']) { - $this->reseller = $this->soapEngines[$this->soapEngineId]['impersonate']; - } else if (strlen($loginCredentials['reseller'])) { + if (strlen($this->soapEngines[$this->soapEngineId]['soapEngineIdSettingsPage'])) { + $this->soapEngineIdSettingsPage=$this->soapEngines[$this->soapEngineId]['soapEngineIdSettingsPage']; + } + + if (strlen($this->soapEngines[$this->soapEngineId]['SipSettingsPage'])) { + $this->SipSettingsPage=$this->soapEngines[$this->soapEngineId]['SipSettingsPage']; + } + + if (strlen($this->soapEngines[$this->soapEngineId]['recordGenerator'])) { + $this->recordGenerator=$this->soapEngines[$this->soapEngineId]['recordGenerator']; + } + + if (strlen($loginCredentials['reseller'])) { hunk ./provisioning/provisioning_logic.phtml 549 + } else if ($this->adminonly && $_REQUEST['reseller_filter']){ + $this->reseller = $_REQUEST['reseller_filter']; hunk ./provisioning/provisioning_logic.phtml 554 - $this->reseller = $loginCredentials['customer']; + $this->customer = $loginCredentials['customer']; + } else if ($this->adminonly && $_REQUEST['customer_filter']){ + $this->customer = $_REQUEST['customer_filter']; hunk ./provisioning/provisioning_logic.phtml 559 - if (strlen($this->soapEngines[$this->soapEngineId]['soapEngineIdSettingsPage'])) { - $this->soapEngineIdSettingsPage=$this->soapEngines[$this->soapEngineId]['soapEngineIdSettingsPage']; + if (strlen($loginCredentials['soapUsername'])) { + $this->soapUsername=$loginCredentials['soapUsername']; + } else if ($this->adminonly) { + $this->soapUsername=$this->soapEngines[$this->soapEngineId]['username']; hunk ./provisioning/provisioning_logic.phtml 565 - if (strlen($this->soapEngines[$this->soapEngineId]['recordGenerator'])) { - $this->recordGenerator=$this->soapEngines[$this->soapEngineId]['recordGenerator']; + //print_r($loginCredentials); + if (strlen($loginCredentials['soapUsername'])) { + $this->SOAPlogin = array( + "username" => $this->soapUsername, + "password" => $loginCredentials['soapPassword'], + "admin" => false + ); + } else { + $this->SOAPlogin = array( + "username" => $this->soapUsername, + "password" => $this->soapEngines[$this->soapEngineId]['password'], + "admin" => true, + "impersonate" => intval($this->reseller) + ); hunk ./provisioning/provisioning_logic.phtml 581 - $this->SOAPlogin = array( - "username" => $this->soapEngines[$this->soapEngineId]['username'], - "password" => $this->soapEngines[$this->soapEngineId]['password'], - "admin" => true, - "impersonate" => intval($this->reseller) - ); - hunk ./provisioning/provisioning_logic.phtml 582 - printf ("Connection to %s at %s as %s/%s ",$this->soapClass,$this->SOAPurl,$this->SOAPurl,$this->soapEngines[$this->soapEngineId]['username'],$this->reseller); + printf ("

Connection to %s at %s as %s/%s ",$this->soapClass,$this->SOAPurl,$this->SOAPurl,$this->soapUsername,$this->reseller); hunk ./provisioning/provisioning_logic.phtml 773 + /* hunk ./provisioning/provisioning_logic.phtml 780 + */ + + if ($this->adminonly) { + $this->filters['reseller']=trim($_REQUEST['reseller_filter']); + } hunk ./provisioning/provisioning_logic.phtml 789 + if (strlen($this->SOAPEngine->SipSettingsPage)) $this->SipSettingsPage=$this->SOAPEngine->SipSettingsPage; hunk ./provisioning/provisioning_logic.phtml 1178 + if (!$this->adminonly) return; hunk ./provisioning/provisioning_logic.phtml 1692 - $url=sprintf('%s?account=%s@%s&reseller=%s&soapEngineIdSipPort=%s',$this->SipSettingsPage,$account->id->username,$account->id->domain, + $url=sprintf('%s?account=%s@%s&reseller=%s&soapEngineIdSipPort=%s', + $this->SipSettingsPage,$account->id->username,$account->id->domain, hunk ./provisioning/provisioning_logic.phtml 1933 - if (!$customer || !in_array($customer,array_keys($this->customers))) { - $customer=$reseller; - } + if (!$customer) $customer=$reseller; hunk ./provisioning/provisioning_logic.phtml 5285 - var $preferenceItems = array('sip_credit' => array('name' => 'Credit for SIP account creation', - 'category' => 'admin'), - 'enum_credit' => array('name' => 'Credit for ENUM numbers creation', + var $propertiesItems = array('sip_credit' => array('name' => 'Credit for SIP account creation', hunk ./provisioning/provisioning_logic.phtml 5289 + 'enum_range_credit' => array('name' => 'Credit for ENUM range creation', + 'category' => 'admin'), + 'enum_number_credit' => array('name' => 'Credit for ENUM numbers creation', + 'category' => 'admin'), hunk ./provisioning/provisioning_logic.phtml 5295 + 'soap_engines' => array('name' => 'SOAP engines', + 'category' => 'admin'), hunk ./provisioning/provisioning_logic.phtml 5309 - 'support_cdrtool' => array('name' => 'CDRTool address', + 'cdrtool_address' => array('name' => 'CDRTool address', + 'category' => 'sip'), + 'sip_settings_page' => array('name' => 'SIP settings page', hunk ./provisioning/provisioning_logic.phtml 5320 + hunk ./provisioning/provisioning_logic.phtml 5322 - 'id', hunk ./provisioning/provisioning_logic.phtml 5323 - 'reseller', hunk ./provisioning/provisioning_logic.phtml 5341 - 'username' => trim($_REQUEST['username_filter']) + 'username' => trim($_REQUEST['username_filter']), + 'only_resellers' => trim($_REQUEST['only_resellers_filter']) hunk ./provisioning/provisioning_logic.phtml 5381 - $result = $this->SOAPEngine->soapclient->getCustomers($Query); + if ($this->adminonly && $this->filters['only_resellers']) { + $result = $this->SOAPEngine->soapclient->getResellers($Query); + } else { + $result = $this->SOAPEngine->soapclient->getCustomers($Query); + } hunk ./provisioning/provisioning_logic.phtml 5494 - $this->showPagination($maxrows); hunk ./provisioning/provisioning_logic.phtml 5497 + } else { + $this->showPagination($maxrows); hunk ./provisioning/provisioning_logic.phtml 5510 + if ($this->adminonly) { + if ($this->filters['only_resellers']) $check_only_resellers_filter='checked'; + printf (" Resellers",$check_only_resellers_filter); + } hunk ./provisioning/provisioning_logic.phtml 5561 - $customerInfo=$this->getCustomer($id); hunk ./provisioning/provisioning_logic.phtml 5562 + if (!$customerInfo = $this->getCustomer($id)) { + return false; + } hunk ./provisioning/provisioning_logic.phtml 5567 - printf ("

",$_SERVER['PHP_SELF']); - print ""; hunk ./provisioning/provisioning_logic.phtml 5572 + printf ("",$_SERVER['PHP_SELF']); + print ""; + print ""; + + print " + + "; + hunk ./provisioning/provisioning_logic.phtml 5581 - Property + Field hunk ./provisioning/provisioning_logic.phtml 5587 - %s + hunk ./provisioning/provisioning_logic.phtml 5590 + $item, hunk ./provisioning/provisioning_logic.phtml 5594 - + + $this->printFiltersToForm(); + + $this->printHiddenFormElements(); + + print "
"; hunk ./provisioning/provisioning_logic.phtml 5610 + foreach ($customerInfo->properties as $_property) { + if (in_array($_property->name,array_keys($this->propertiesItems))) { + $this->propertiesItems[$_property->name]['value']=$_property->value; + } + } + + hunk ./provisioning/provisioning_logic.phtml 5621 + printf ("
",$_SERVER['PHP_SELF']); + print ""; + print ""; + print " + + "; + hunk ./provisioning/provisioning_logic.phtml 5629 - Category hunk ./provisioning/provisioning_logic.phtml 5631 + Description hunk ./provisioning/provisioning_logic.phtml 5634 - foreach (array_keys($this->preferenceItems) as $item) { - printf ("%s + foreach (array_keys($this->propertiesItems) as $item) { + $item_print=ucfirst (preg_replace("/_/"," ",$item)); + printf (" + %s + hunk ./provisioning/provisioning_logic.phtml 5640 - hunk ./provisioning/provisioning_logic.phtml 5641 - ucfirst($this->preferenceItems[$item]['category']), - $item, + $item_print, hunk ./provisioning/provisioning_logic.phtml 5643 - $customerInfo->preferences[$item]['value'] + $this->propertiesItems[$item]['value'], + $this->propertiesItems[$item]['name'] hunk ./provisioning/provisioning_logic.phtml 5648 - print " - - "; + $this->printFiltersToForm(); + + $this->printHiddenFormElements(); + + print "
"; + hunk ./provisioning/provisioning_logic.phtml 5660 - $this->printFiltersToForm(); - - $this->printHiddenFormElements(); - - print ""; hunk ./provisioning/provisioning_logic.phtml 5662 - hunk ./provisioning/provisioning_logic.phtml 5663 - print "

Updating customer ..."; + //print "

Updating customer ..."; + hunk ./provisioning/provisioning_logic.phtml 5666 - $customerInfo=$this->getCustomer($_REQUEST['customer_filter']); - foreach (array_keys($this->preferenceItems) as $item) { - $var_name=$item.'_form'; - $properties[]=array('name' => $item, - 'value' => trim($_REQUEST[$var_name]), - 'category' => $this->preferenceItems[$item]['category'] - ); hunk ./provisioning/provisioning_logic.phtml 5667 + if (!$customerInfo=$this->getCustomer($_REQUEST['customer_filter'])) { + return false; + } + + if ($_REQUEST['section'] == 'customer_properties') { + foreach (array_keys($this->propertiesItems) as $item) { + $var_name=$item.'_form'; + $properties[]=array('name' => $item, + 'value' => trim($_REQUEST[$var_name]), + 'category' => $this->propertiesItems[$item]['category'] + ); + + } + $customerInfo->properties=$properties; + } else { + foreach ($this->customerFields as $item) { + $var_name=$item.'_form'; + $customer->$item = trim($_REQUEST[$var_name]); + + } hunk ./provisioning/provisioning_logic.phtml 5691 - print_r($properties); + print_r($customer); hunk ./provisioning/provisioning_logic.phtml 5695 - $customerInfo->properties=$properties; - hunk ./provisioning/sip_settings_lib.phtml 106 + $this->loginCredentials = &$loginCredentials; + hunk ./provisioning/sip_settings_lib.phtml 244 - $this->SOAPlogin = array( - "username" => $this->soapEngines[$this->soapEngineIdSipPort]['username'], - "password" => $this->soapEngines[$this->soapEngineIdSipPort]['password'], - "admin" => true, - "impersonate" => intval($this->reseller) - ); + + if (strlen($this->loginCredentials['soapUsername'])) { + $this->SOAPlogin = array( + "username" => $this->loginCredentials['soapUsername'], + "password" => $this->loginCredentials['soapPassword'], + "admin" => false + ); + + } else { + $this->SOAPlogin = array( + "username" => $this->soapEngines[$this->soapEngineIdSipPort]['username'], + "password" => $this->soapEngines[$this->soapEngineIdSipPort]['password'], + "admin" => true, + "impersonate" => intval($this->reseller) + ); + } +