Forgot to check in Korean file.
[timetracker.git] / plugins / MonthlyQuota.class.php
index 4e5b8dc..13cbd9d 100644 (file)
@@ -26,6 +26,8 @@
 // | https://www.anuko.com/time_tracker/credits.htm
 // +----------------------------------------------------------------------+
 
+import('ttTimeHelper');
+
 // MontlyQuota class implements handling of work hour quotas.
 class MonthlyQuota {
 
@@ -41,11 +43,12 @@ class MonthlyQuota {
 
   // update - deletes a quota, then inserts a new one.
   public function update($year, $month, $quota) {
-    $teamId = $this->team_id;
-    $deleteSql = "DELETE FROM tt_monthly_quotas WHERE year = $year AND month = $month AND team_id = $teamId";
+    $team_id = $this->team_id;
+    $deleteSql = "DELETE FROM tt_monthly_quotas WHERE year = $year AND month = $month AND team_id = $team_id";
     $this->db->exec($deleteSql);
     if ($quota){
-      $insertSql = "INSERT INTO tt_monthly_quotas (team_id, year, month, quota) values ($teamId, $year, $month, $quota)";
+      $float_quota = ttTimeHelper::quotaToFloat($quota);
+      $insertSql = "INSERT INTO tt_monthly_quotas (team_id, year, month, quota) values ($team_id, $year, $month, $float_quota)";
       $affected = $this->db->exec($insertSql);
       return (!is_a($affected, 'PEAR_Error'));
     }
@@ -53,30 +56,18 @@ class MonthlyQuota {
   }
 
   // get - obtains either a single month quota or an array of quotas for an entire year.
-  public function get($year, $month) {
+  // Month starts with 1 for January, not 0.
+  public function get($year, $month = null) {
     if (is_null($month)){
       return $this->getMany($year);
     }
     return $this->getSingle($year, $month);
   }
 
-  // getWorkdayHours - obtains workday_hours value for a team from the database.
-  public function getWorkdayHours(){
-    $teamId = $this->team_id;
-    $sql = "SELECT workday_hours FROM tt_teams where id = $teamId";
-    $reader = $this->db->query($sql);
-    if (is_a($reader, 'PEAR_Error')) {
-      return false;
-    }
-
-    $row = $reader->fetchRow();
-    return $row['workday_hours'];
-  }
-
   // getSingle - obtains a quota for a single month.
   private function getSingle($year, $month) {
-    $teamId = $this->team_id;
-    $sql = "SELECT quota FROM tt_monthly_quotas WHERE year = $year AND month = $month AND team_id = $teamId";
+    $team_id = $this->team_id;
+    $sql = "SELECT quota FROM tt_monthly_quotas WHERE year = $year AND month = $month AND team_id = $team_id";
     $reader = $this->db->query($sql);
     if (is_a($reader, 'PEAR_Error')) {
       return false;
@@ -88,13 +79,14 @@ class MonthlyQuota {
 
     // If we did not find a record, return a calculated monthly quota.
     $numWorkdays = $this->getNumWorkdays($month, $year);
-    return $numWorkdays * $this->getWorkdayHours();
+    global $user;
+    return $numWorkdays * $user->workday_hours;
   }
 
   // getMany - returns an array of quotas for a given year for team.
   private function getMany($year){
-    $teamId = $this->team_id;
-    $sql = "SELECT month, quota FROM tt_monthly_quotas WHERE year = $year AND team_id = $teamId";
+    $team_id = $this->team_id;
+    $sql = "SELECT month, quota FROM tt_monthly_quotas WHERE year = $year AND team_id = $team_id";
     $result = array();
     $res = $this->db->query($sql);
     if (is_a($res, 'PEAR_Error')) {