{ delivery, parent } // Location not listed are excluded static $locations= array(); // control how many days before are holded item 'visible' static $pre_hold_offset=7; // Return delivery date for a give location static function delivery($location) { if(isset(self::$locations[$location])) { $parameters = self::$locations[$location]; return @$parameters['delivery']; } else { return null; } } // True if the date before hold_until_date static function early($hold_until_date, $date=null) { if(!$date) $date = Today(); return date_diff2($hold_until_date, $date, 'd') > OrderXtraConfig::$pre_hold_offset; } static function sql_held_condition($date=null) { if(!$date) $date = Today(); $sql_date = date2sql(add_days($date, + OrderXtraConfig::$pre_hold_offset)); return 'hold_until_date > '.db_escape($sql_date); } } ?>