function testDates() { $GLOBALS['Language']->setReturnValueAt(0, 'getText', "Y-m-d", array('system', 'datefmt_short')); $GLOBALS['Language']->setReturnValueAt(1, 'getText', "d/m/Y", array('system', 'datefmt_short')); $GLOBALS['Language']->setReturnValueAt(2, 'getText', "Y-m-d", array('system', 'datefmt_short')); $field = new MockTracker_FormElement_Field_Date(); $date = new Tracker_Artifact_ChangesetValue_Date(111, $field, false, 1221221466); $this->assertEqual($date->getTimestamp(), 1221221466); $this->assertEqual($date->getDate(), "2008-09-12"); $this->assertEqual($date->getDate(), "12/09/2008"); $this->assertEqual($date->getSoapValue(), 1221221466); $this->assertEqual($date->getValue(), "2008-09-12"); $null_date = new Tracker_Artifact_ChangesetValue_Date(111, $field, false, null); $this->assertNull($null_date->getTimestamp()); $this->assertEqual($null_date->getDate(), ''); $this->assertEqual($null_date->getSoapValue(), ''); }
public function testDates() { stub($this->field)->formatDateForDisplay(1221221466)->returns("12/09/2008"); $date = new Tracker_Artifact_ChangesetValue_Date(111, $this->field, false, 1221221466); $this->assertEqual($date->getTimestamp(), 1221221466); $this->assertEqual($date->getDate(), "12/09/2008"); stub($this->field)->formatDateForDisplay(1221221467)->returns("2008-09-12"); $date = new Tracker_Artifact_ChangesetValue_Date(111, $this->field, false, 1221221467); $this->assertEqual($date->getTimestamp(), 1221221467); $this->assertEqual($date->getDate(), "2008-09-12"); $this->assertEqual($date->getSoapValue($this->user), array('value' => 1221221467)); $this->assertEqual($date->getValue(), "2008-09-12"); $null_date = new Tracker_Artifact_ChangesetValue_Date(111, $this->field, false, null); $this->assertNull($null_date->getTimestamp()); $this->assertEqual($null_date->getDate(), ''); $this->assertEqual($null_date->getSoapValue($this->user), array('value' => '')); }
/** * Returns diff between current date and date in param * * @param Tracker_Artifact_ChangesetValue_Date $changeset_value the changeset value to compare * * @return string The difference between another $changeset_value, false if no differneces */ public function diff($changeset_value, $format = 'html') { $next_date = $this->getDate(); if ($changeset_value->getTimestamp() != 0) { $previous_date = $changeset_value->getDate(); if ($previous_date !== $next_date) { if ($next_date === '') { return $GLOBALS['Language']->getText('plugin_tracker_artifact', 'cleared'); } else { return $GLOBALS['Language']->getText('plugin_tracker_artifact', 'changed_from') . ' ' . $previous_date . ' ' . $GLOBALS['Language']->getText('plugin_tracker_artifact', 'to') . ' ' . $next_date; } } } else { return $GLOBALS['Language']->getText('plugin_tracker_artifact', 'set_to') . ' ' . $next_date; } return false; }
/** * Fetch the html code to display the field value in artifact in read only mode * * @param Tracker_Artifact $artifact The artifact * @param Tracker_Artifact_ChangesetValue $value The actual value of the field * * @return string */ public function fetchArtifactValueReadOnly(Tracker_Artifact $artifact, Tracker_Artifact_ChangesetValue $value = null) { $html = ''; if (!$value) { $value = new Tracker_Artifact_ChangesetValue_Date(null, $this, false, $artifact->getSubmittedOn()); } $timestamp = $value->getTimestamp(); $value = $timestamp ? $this->formatDateForDisplay($timestamp) : ''; $html .= $value; return $html; }