Adjusted monthly quotas plugin to use configurable holidays.
[timetracker.git] / WEB-INF / lib / form / Calendar.class.php
index dbe2998..d3845e8 100644 (file)
@@ -44,22 +44,22 @@ class Calendar extends FormElement {
 
     var $controlName = "";
     var $highlight = "time"; // Determines what type of active days to highlight ("time" or "expenses"). 
-    // var $mAllDays       = true;
-    var $class = "Calendar";
 
     function __construct($name) {
-        $this->controlName = $name;
-        $this->mMonthNames = array('January','February','March','April','May','June','July','August','September','October','November','December');
-        $this->mWeekDayShortNames = array('Su','Mo','Tu','We','Th','Fr','Sa');
+      $this->class = 'Calendar';
+      $this->controlName = $name; // TODO: why controlName? Other classes have "name".
+      $this->mMonthNames = array('January','February','March','April','May','June','July','August','September','October','November','December');
+      $this->mWeekDayShortNames = array('Su','Mo','Tu','We','Th','Fr','Sa');
     }
-    
+
     function setHighlight($highlight) {
        if ($highlight && $highlight != 'time')
          $this->highlight = $highlight;
     }
 
-    function localize($i18n) {
+    function localize() {
       global $user;
+      global $i18n;
       
       $this->mMonthNames = $i18n->monthNames;
       $this->mWeekDayShortNames = $i18n->weekdayShortNames;
@@ -171,14 +171,11 @@ class Calendar extends FormElement {
               $stl_cell = ' class="CalendarDay"';
             }
 
-              // holidays
-              if ($this->showHolidays) {
-              foreach ($this->holidays as $day) {
-                if($day == $date) {
-                  $stl_cell = ' class="CalendarDayHoliday"';
-                  $stl_link = ' class="CalendarLinkHoliday"';
-                }
-              }
+            // holidays
+            $date_to_check = ttTimeHelper::dateInDatabaseFormat($thisyear, $thismonth, $start_date+$j);
+            if (ttTimeHelper::isHoliday($date_to_check)) {
+              $stl_cell = ' class="CalendarDayHoliday"';
+              $stl_link = ' class="CalendarLinkHoliday"';
             }
 
             // selected day
@@ -205,7 +202,7 @@ class Calendar extends FormElement {
         $str .= "</TR>\n";
       }
 
-      $str .= "<tr><td colspan=\"7\" align=\"center\"><a id=\"today_link\" href=\"?".$this->controlName."=".strftime(DB_DATEFORMAT)."\" tabindex=\"-1\">".$i18n->getKey('label.today')."</a></td></tr>\n";
+      $str .= "<tr><td colspan=\"7\" align=\"center\"><a id=\"today_link\" href=\"?".$this->controlName."=".strftime(DB_DATEFORMAT)."\" tabindex=\"-1\">".$i18n->get('label.today')."</a></td></tr>\n";
       $str .= "</table>\n";
 
       $str .= "<input type=\"hidden\" name=\"$this->controlName\" value=\"$indate\">\n";
@@ -258,7 +255,7 @@ class Calendar extends FormElement {
     function _getActiveDates($start, $end) {
       
       global $user;
-      $user_id = $user->getActiveUser();
+      $user_id = $user->getUser();
       
       $table = ($this->highlight == 'expenses') ? 'tt_expense_items' : 'tt_log';