Changeset 22576 for branches/version-2_12-dev/data/class
- Timestamp:
- 2013/02/20 21:20:34 (11 years ago)
- Location:
- branches/version-2_12-dev/data/class
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_12-dev/data/class/SC_Date.php
r22567 r22576 29 29 var $day; 30 30 var $end_year; 31 32 public static $arrHoliday = NULL; 33 public static $arrRegularHoliday = NULL; 31 34 32 35 // コンストラクタ … … 185 188 return $minutes_array; 186 189 } 190 191 /** 192 * 休日の判定. 193 * 194 * @param integer $year 195 * @param integer $month 196 * @param integer $day 197 * @return boolean 休日の場合はtrue 198 */ 199 public function isHoliday($year, $month, $day) 200 { 201 is_null(SC_Date_Ex::$arrHoliday) and $this->setArrHoliday(); 202 is_null(SC_Date_Ex::$arrRegularHoliday) and $this->setRegularHoliday(); 203 204 if (!empty(SC_Date_Ex::$arrHoliday[$month])) { 205 if (in_array($day, SC_Date_Ex::$arrHoliday[$month])) { 206 return true; 207 } 208 } 209 if (!empty(SC_Date_Ex::$arrRegularHoliday)) { 210 $day = date('w', mktime(0,0,0 ,$month, $day, $year)); 211 if (in_array($day, SC_Date_Ex::$arrRegularHoliday)) { 212 return true; 213 } 214 } 215 return false; 216 } 217 218 /** 219 * 休日情報をスタティック変数にセット. 220 * 221 * @return void 222 */ 223 private function setArrHoliday() 224 { 225 $objHoliday = new SC_Helper_Holiday_Ex(); 226 $holiday = $objHoliday->getList(); 227 $arrHoliday = array(); 228 foreach ($holiday AS $val) { 229 $arrHoliday[$val['month']][] = $val['day']; 230 } 231 SC_Date_Ex::$arrHoliday = $arrHoliday; 232 } 233 234 /** 235 * 定休日情報をスタティック変数にセット. 236 * 237 * @return void 238 */ 239 private function setRegularHoliday() 240 { 241 $arrInfo = SC_Helper_DB_Ex::sfGetBasisData(); 242 SC_Date_Ex::$arrRegularHoliday = explode('|', $arrInfo['regular_holiday_ids']); 243 } 187 244 } -
branches/version-2_12-dev/data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_Calendar.php
r22567 r22576 68 68 { 69 69 70 // 休日取得取得71 $this->arrHoliday = $this->lfGetHoliday();72 // 定休日取得取得73 $this->arrRegularHoliday = $this->lfGetRegularHoliday();74 70 // カレンダーデータ取得 75 71 $this->arrCalendar = $this->lfGetCalendar(2); … … 96 92 function lfGetCalendar($disp_month = 1) 97 93 { 94 $objDate = new SC_Date_Ex(); 98 95 $arrCalendar = array(); 99 96 $today = date('Y/m/d'); … … 115 112 $arrCalendar[$j][$i]['month'] = $month; 116 113 $arrCalendar[$j][$i]['day'] = $objDay->day; 117 $arrCalendar[$j][$i]['holiday'] = $ this->lfCheckHoliday($year, $month, $objDay->day);114 $arrCalendar[$j][$i]['holiday'] = $objDate->isHoliday($year, $month, $objDay->day); 118 115 $arrCalendar[$j][$i]['today'] = $today === sprintf('%04d/%02d/%02d', $year, $month, $objDay->day); 119 116 … … 124 121 return $arrCalendar; 125 122 } 126 127 /**128 * 休日取得.129 *130 * @return array $arrHoliday 休日情報の配列を返す131 */132 function lfGetHoliday()133 {134 $objQuery = SC_Query_Ex::getSingletonInstance();135 $objQuery->setOrder('rank DESC');136 137 $where = 'del_flg <> 1';138 $arrRet = $objQuery->select('month, day', 'dtb_holiday', $where);139 foreach ($arrRet AS $key=>$val) {140 $arrHoliday[$val['month']][] = $val['day'];141 }142 return $arrHoliday;143 }144 145 /**146 * 定休日取得.147 *148 * @return array $arrRegularHoliday 定休日情報の配列を返す149 */150 function lfGetRegularHoliday()151 {152 $arrInfo = SC_Helper_DB_Ex::sfGetBasisData();153 $arrRegularHoliday = explode('|', $arrInfo['regular_holiday_ids']);154 return $arrRegularHoliday;155 }156 157 /**158 * 休日チェック取得.159 *160 * @param integer $year 年161 * @param integer $month 月162 * @param integer $day 日163 * @return boolean 休日の場合trueを返す164 */165 function lfCheckHoliday($year, $month, $day)166 {167 if (!empty($this->arrHoliday[$month])) {168 if (in_array($day, $this->arrHoliday[$month])) {169 return true;170 }171 }172 if (!empty($this->arrRegularHoliday)) {173 $day = date('w', mktime(0,0,0 ,$month, $day, $year));174 if (in_array($day, $this->arrRegularHoliday)) {175 return true;176 }177 }178 return false;179 }180 181 123 }
Note: See TracChangeset
for help on using the changeset viewer.