Example #1
0
 /**
  * Update contact
  * @param array $givenParameters
  */
 public static function update($givenParameters, $origin = "", $route = "", $validate = true, $validateMandatory = true)
 {
     if ($validate) {
         self::validateForm($givenParameters, $origin, $route, $validateMandatory);
     }
     $aTagList = array();
     $aTags = array();
     if (isset($givenParameters['contact_tags'])) {
         $aTagList = explode(",", $givenParameters['contact_tags']);
         foreach ($aTagList as $var) {
             $var = trim($var);
             if (!empty($var)) {
                 array_push($aTags, $var);
             }
         }
     }
     if (count($aTags) > 0) {
         TagsRepository::saveTagsForResource(self::$objectName, $givenParameters['object_id'], $aTags, '', false, 1);
     }
     $infoToUpdate['contact_id'] = $givenParameters['object_id'];
     if (isset($givenParameters['timezone_id']) && is_numeric($givenParameters['timezone_id'])) {
         $infoToUpdate['timezone_id'] = $givenParameters['timezone_id'];
     } else {
         $infoToUpdate['timezone_id'] = "";
     }
     if (isset($givenParameters['description'])) {
         $infoToUpdate['description'] = $givenParameters['description'];
     }
     $class = static::$objectClass;
     $sField = $class::getUniqueLabelField();
     if (isset($givenParameters[$sField])) {
         $oSlugify = new CentreonSlugify($class, get_called_class());
         $sSlug = $oSlugify->slug($givenParameters[$sField]);
         $infoToUpdate[$class::getSlugField()] = $sSlug;
     }
     return Contact::update($givenParameters['object_id'], $infoToUpdate);
 }