/**
  * Load initial properties from this change.
  * @param CHANGE $obj
  */
 public function load_from_object($obj)
 {
     parent::load_from_object($obj);
     $this->set_value('files', $obj->files);
     $job = $this->job_at($obj->job_id);
     if (isset($job)) {
         $this->set_value('job_id', $job->id);
         $this->add_preview($job, 'Attached to job: ' . $job->title_as_html(), !$this->previewing());
     }
     // When updating a change, do not publish by default
     $this->set_value('publication_state', History_item_silent);
 }
示例#2
0
 /**
  * Load initial properties from this job.
  * @param JOB $obj
  */
 public function load_from_object($obj)
 {
     parent::load_from_object($obj);
     $this->set_value('kind', $obj->kind);
     $this->set_value('assignee_id', $obj->assignee_id);
     $this->set_value('extra_description', $obj->extra_description);
     $this->set_value('time_needed', $obj->time_needed);
     if ($obj->reporter_id) {
         $this->set_value('reporter_id', $obj->reporter_id);
     } else {
         $this->set_value('reporter_id', $obj->creator_id);
     }
     // set up subscription fields, defaulting to true
     $this->set_value('subscribe_reporter', true);
     $this->set_value('subscribe_assignee', true);
     $this->set_value('subscribe_creator', true);
     $creator = $obj->creator();
     if ($creator) {
         $subscriber = $creator->subscriber();
         $this->set_value('subscribe_creator', $subscriber->subscribed($obj, Subscribe_entry));
     }
     $reporter = $obj->reporter();
     if ($reporter) {
         $subscriber = $reporter->subscriber();
         $this->set_value('subscribe_reporter', $subscriber->subscribed($obj, Subscribe_entry));
     }
     $assignee = $obj->assignee();
     if ($assignee) {
         $subscriber = $assignee->subscriber();
         $this->set_value('subscribe_assignee', $subscriber->subscribed($obj, Subscribe_entry));
     }
 }