예제 #1
0
 public function save($con = null)
 {
     if ($this->getUuid() == null || strlen($this->getUuid()) > sfConfig::get('app_uuid_project_length')) {
         $this->setUuid(myToolkit::customUuid(sfConfig::get('app_uuid_project_length')));
     }
     parent::save();
     if (sfContext::getInstance()->getUser()->isAuthenticated()) {
         $user = sfContext::getInstance()->getUser();
         //$user->refreshCredentials();
     }
 }
예제 #2
0
 public function save(PropelPDO $con = null)
 {
     $logEntry = new Log();
     $logEntry->setWhen(time());
     $logEntry->setPropelClass("Project");
     $logEntry->setSfGuardUserProfileId(sfContext::getInstance()->getUser()->getUserId());
     // this is a new job
     if ($this->isNew()) {
         $logEntry->setMessage("Project created.");
         $logEntry->setLogMessageTypeId(sfConfig::get("app_log_type_create"));
     } else {
         $logEntry->setMessage("Project updated.");
         $logEntry->setLogMessageTypeId(sfConfig::get("app_log_type_update"));
     }
     parent::save($con);
     $logEntry->setPropelId($this->getId());
     $logEntry->save();
 }
예제 #3
0
 /**
  * Save project
  * 
  * $template is used when project is created to indicate wether project is 
  * being created from template or not
  *
  * @param Project $template
  * @return boolean
  */
 function save($template = null)
 {
     $modified_fields = $this->modified_fields;
     $is_new = $this->isNew();
     event_trigger('on_before_save_project', array('project' => &$this));
     $save = parent::save();
     if ($save && !is_error($save)) {
         if ($is_new) {
             // Add leader to project
             $project_user = new ProjectUser();
             $project_user->setProjectId($this->getId());
             $project_user->setUserId($this->getLeaderId());
             $project_user->save();
             clean_project_permissions_cache($this);
             event_trigger('on_project_created', array(&$this, &$template));
         } else {
             clean_project_permissions_cache($this);
             event_trigger('on_project_updated', array(&$this));
         }
         // if
         if (in_array('name', $modified_fields) || in_array('overview', $modified_fields)) {
             $content = $this->getName();
             if ($overview = $this->getOverview()) {
                 $content .= "\n\n" . $overview;
             }
             // if
             search_index_set($this->getId(), 'Project', $content);
         }
         // if
     }
     // if
     return $save;
 }