Ejemplo n.º 1
0
 /**
  * save one phone
  * -  if $recordData['id'] is empty the phone gets added, otherwise it gets updated
  *
  * @param array $recordData an array of phone properties
  * @return array
  */
 public function saveMyPhone($recordData)
 {
     $voipController = Phone_Controller_MyPhone::getInstance();
     $phone = new Phone_Model_MyPhone();
     $phone->setFromArray($recordData);
     $phoneSettings = new Voipmanager_Model_Snom_PhoneSettings();
     $phoneSettings->setFromArray($recordData);
     $phone->settings = $phoneSettings;
     $phone->lines = new Tinebase_Record_RecordSet('Voipmanager_Model_Snom_Line', isset($recordData['lines']) && !empty($recordData['lines']) ? $recordData['lines'] : array(), TRUE);
     if (!empty($phone->id)) {
         $phone = $voipController->update($phone);
     }
     return $this->getMyPhone($phone->getId());
 }
 /**
  * save user phone
  *
  * @param array $recordData an array of phone properties
  * @return array
  */
 public function saveMyPhone($recordData)
 {
     // close session to allow other requests
     Zend_Session::writeClose(true);
     unset($recordData['template_id']);
     $phone = new Phone_Model_MyPhone();
     $phone->setFromArray($recordData);
     $phoneSettings = new Voipmanager_Model_Snom_PhoneSettings();
     $phoneSettings->setFromArray($recordData);
     $phone->settings = $phoneSettings;
     $phone->lines = new Tinebase_Record_RecordSet('Voipmanager_Model_Snom_Line', isset($recordData['lines']) && !empty($recordData['lines']) ? $recordData['lines'] : array(), TRUE);
     if (!empty($phone->id)) {
         $phone = Phone_Controller_MyPhone::getInstance()->update($phone);
     } else {
         // will throw exception in any case
         $phone = Phone_Controller_MyPhone::getInstance()->create($phone);
     }
     return $this->getMyPhone($phone->getId());
 }
Ejemplo n.º 3
0
 /**
  * save one phone
  * -  if $recordData['id'] is empty the phone gets added, otherwise it gets updated
  *
  * @param array $recordData an array of phone properties
  * @return array
  */
 public function saveSnomPhone($recordData)
 {
     // unset if empty
     if (empty($recordData['id'])) {
         unset($recordData['id']);
     }
     // unset some (readonly-)fields
     $unsetFields = array('settings_loaded_at', 'firmware_checked_at', 'last_modified_time', 'ipaddress', 'current_software');
     foreach ($unsetFields as $field) {
         unset($recordData[$field]);
     }
     //if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' ' . print_r($recordData, true));
     $phone = new Voipmanager_Model_Snom_Phone($recordData);
     $phoneSettings = new Voipmanager_Model_Snom_PhoneSettings();
     $phoneSettings->setFromArray($recordData);
     $phone->lines = new Tinebase_Record_RecordSet('Voipmanager_Model_Snom_Line', isset($recordData['lines']) && !empty($recordData['lines']) ? $recordData['lines'] : array(), TRUE);
     $phone->rights = new Tinebase_Record_RecordSet('Voipmanager_Model_Snom_PhoneRight', isset($recordData['rights']) && !empty($recordData['rights']) ? $recordData['rights'] : array());
     $phone->settings = $phoneSettings;
     //if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' ' . print_r($phoneSettings->toArray(), true));
     if (empty($phone->id)) {
         $phone = Voipmanager_Controller_Snom_Phone::getInstance()->create($phone);
     } else {
         $phone = Voipmanager_Controller_Snom_Phone::getInstance()->update($phone);
     }
     $phone = $this->getSnomPhone($phone->getId());
     return $phone;
 }