private function createChangesetId(Tracker_Artifact $artifact, PFUser $submitter, $submitted_on) { $email = null; if ($submitter->isAnonymous()) { $email = $submitter->getEmail(); } return $this->changeset_dao->create($artifact->getId(), $submitter->getId(), $email, $submitted_on); }
/** * @throws Tracker_FieldValueNotStoredException */ private function storeFieldsValues(Tracker_Artifact $artifact, $previous_changeset, array $fields_data, PFUser $submitter, $changeset_id) { $used_fields = $this->formelement_factory->getUsedFields($artifact->getTracker()); foreach ($used_fields as $field) { if (!$this->saveNewChangesetForField($field, $artifact, $previous_changeset, $fields_data, $submitter, $changeset_id)) { $this->changeset_dao->rollBack(); throw new Tracker_FieldValueNotStoredException($GLOBALS['Language']->getText('plugin_tracker', 'field_not_stored_exception', array($field->getLabel()))); } } return true; }
/** * Get artifacts that responds to some criteria * * @param date $date The date criteria * @param Integer $trackerId The Tracker Id * * @return Array */ public function getArtifactsByCriterias($date, $trackerId = null) { $artifacts = array(); $dao = new Tracker_Artifact_ChangesetDao(); $dar = $dao->getArtifactsByFieldAndLastUpdateDate($trackerId, $date); if ($dar && !$dar->isError()) { $artifactFactory = Tracker_ArtifactFactory::instance(); foreach ($dar as $row) { $artifacts[] = $artifactFactory->getArtifactById($row['artifact_id']); } } return $artifacts; }