/**
  * Save object. If object is searchable this function will add conetent of searchable fields 
  * to search index
  *
  * @param void
  * @return boolean
  */
 function save()
 {
     $result = parent::save();
     // If searchable refresh content in search table
     if ($this->isSearchable()) {
         SearchableObjects::dropContentByObject($this);
         $project = $this->getProject();
         foreach ($this->getSearchableColumns() as $column_name) {
             $content = $this->getSearchableColumnContent($column_name);
             if (trim($content) != '') {
                 $searchable_object = new SearchableObject();
                 $searchable_object->setRelObjectManager(get_class($this->manager()));
                 $searchable_object->setRelObjectId($this->getObjectId());
                 $searchable_object->setColumnName($column_name);
                 $searchable_object->setContent($content);
                 if ($project instanceof Project) {
                     $searchable_object->setProjectId($project->getId());
                 }
                 $searchable_object->setIsPrivate($this->isPrivate());
                 $searchable_object->save();
             }
             // if
         }
         // if
     }
     // if
     return $result;
 }
 /**
  * Save object. If object is searchable this function will add content of searchable fields
  * to search index
  *
  * @param void
  * @return boolean
  */
 function save()
 {
     $disk_space_used = config_option('disk_space_used');
     if ($disk_space_used && $disk_space_used > config_option('disk_space_max')) {
         throw new Exception(lang('maximum disk space reached'));
     }
     if (parent::save()) {
         /*try {
         			$user = logged_user();
         			if ($user instanceof User && $this->isCommentable()) {
         				$this->subscribeUser($user);
         			}
         		} catch (Exception $e) {}*/
         //remove all entries
         if (get_class($this->manager()) != 'MailContents') {
             $condition = ' `rel_object_manager` = \'' . get_class($this->manager()) . '\' AND `rel_object_id` = ' . $this->getObjectId();
             ReadObjects::delete($condition);
             if (logged_user() instanceof User) {
                 $read_object = new ReadObject();
                 $read_object->setRelObjectManager(get_class($this->manager()));
                 $read_object->setRelObjectId($this->getObjectId());
                 $read_object->setUserId(logged_user()->getId());
                 $read_object->setIsRead(true);
                 $read_object->save();
             }
         }
         return true;
     }
     return false;
 }
Exemplo n.º 3
0
 /**
  * Save object. If object is searchable this function will add content of searchable fields
  * to search index
  *
  * @param void
  * @return boolean
  */
 function save()
 {
     $disk_space_used = config_option('disk_space_used');
     if ($disk_space_used && $disk_space_used > config_option('disk_space_max')) {
         throw new Exception(lang('maximum disk space reached'));
     }
     // Insert into base table
     $this->setObjectTypeId($this->manager()->getObjectTypeId());
     if ($this->getObject()->save()) {
         $id = $this->getObject()->getId();
         if (is_numeric($id)) {
             $this->setObjectId($id);
         } else {
             throw new Exception(lang('unable to save'));
         }
         parent::save();
         return true;
     }
     return false;
 }
 /**
  * Save object. If object is searchable this function will add content of searchable fields
  * to search index
  *
  * @param void
  * @return boolean
  */
 function save()
 {
     $disk_space_used = config_option('disk_space_used');
     if ($disk_space_used && $disk_space_used > config_option('disk_space_max')) {
         throw new Exception(lang('maximum disk space reached'));
     }
     // Insert into base table
     $this->setObjectTypeId($this->manager()->getObjectTypeId());
     if ($this->getObject()->save()) {
         $id = $this->getObject()->getId();
         if (is_numeric($id)) {
             $this->setObjectId($id);
         } else {
             throw new Exception(lang('unable to save'));
         }
         if (config_option('getting_started_step') < 98) {
             if (in_array($this->getObjectTypeName(), array('task', 'message', 'weblink', 'file', 'expense', 'objective', 'event'))) {
                 set_config_option('getting_started_step', 98);
                 evt_add('reload tab panel', 'more-panel');
             }
         }
         parent::save();
         return true;
     }
     return false;
 }