示例#1
0
 function getTypes()
 {
     $types = array();
     foreach (array_keys($this->detailMap) as $code) {
         array_push($types, ReminderIntervalType::from($code));
     }
     return $types;
 }
示例#2
0
 /**
  * Creates a ReminderIntervals object from rows in the rule_reminder table,
  * and sets it in the supplied Rule.
  * @param Rule $rule
  */
 private function fillRuleReminderIntervals($rule)
 {
     $stmt = sqlStatement(self::SQL_RULE_REMINDER_INTERVAL, array($rule->id));
     $reminderInterval = new ReminderIntervals();
     for ($iter = 0; $row = sqlFetchArray($stmt); $iter++) {
         $amount = $row['value'];
         $unit = TimeUnit::from($row['method_detail']);
         $methodParts = explode('_', $row['method']);
         $type = ReminderIntervalType::from($methodParts[0]);
         $range = ReminderIntervalRange::from($methodParts[2]);
         if (!is_null($type) && !is_null($range) && !is_null($unit)) {
             $detail = new ReminderIntervalDetail($type, $range, $amount, $unit);
             $reminderInterval->addDetail($detail);
         }
     }
     $rule->setReminderIntervals($reminderInterval);
 }