From: Nik Okuntseff Date: Sat, 2 Mar 2019 16:41:44 +0000 (+0000) Subject: More timesheet related refactoring. X-Git-Tag: timetracker_1.19-1~237 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=b55f038f3aa3d23376a9a68d22109f7be5ba1f09;p=timetracker.git More timesheet related refactoring. --- diff --git a/WEB-INF/lib/ttTimesheetHelper.class.php b/WEB-INF/lib/ttTimesheetHelper.class.php index 743477b2..d03f8010 100644 --- a/WEB-INF/lib/ttTimesheetHelper.class.php +++ b/WEB-INF/lib/ttTimesheetHelper.class.php @@ -181,24 +181,19 @@ class ttTimesheetHelper { global $user; $mdb2 = getConnection(); + $user_id = $user->getUser(); $group_id = $user->getGroup(); $org_id = $user->org_id; - // Handle time records. + // Handle tt_log records. $sql = "update tt_log set timesheet_id = null". - " where timesheet_id = $timesheet_id and group_id = $group_id and org_id = $org_id"; - $affected = $mdb2->exec($sql); - if (is_a($affected, 'PEAR_Error')) return false; - - // Handle expense items. - $sql = "update tt_expense_items set timesheet_id = null". - " where timesheet_id = $timesheet_id and group_id = $group_id and org_id = $org_id"; + " where timesheet_id = $timesheet_id and user_id = $user_id and group_id = $group_id and org_id = $org_id"; $affected = $mdb2->exec($sql); if (is_a($affected, 'PEAR_Error')) return false; // Delete timesheet. $sql = "update tt_timesheets set status = null". - " where id = $timesheet_id and group_id = $group_id and org_id = $org_id"; + " where id = $timesheet_id and user_id = $user_id and group_id = $group_id and org_id = $org_id"; $affected = $mdb2->exec($sql); return (!is_a($affected, 'PEAR_Error')); } @@ -208,6 +203,7 @@ class ttTimesheetHelper { global $user; $mdb2 = getConnection(); + $user_id = $user->getUser(); $group_id = $user->getGroup(); $org_id = $user->org_id; @@ -218,24 +214,11 @@ class ttTimesheetHelper { $sql = "update tt_timesheets set name = ".$mdb2->quote($name).", comment = ".$mdb2->quote($comment). ", status = ".$mdb2->quote($status). - " where id = $timesheet_id and group_id = $group_id and org_id = $org_id"; + " where id = $timesheet_id and user_id = $user_id and group_id = $group_id and org_id = $org_id"; $affected = $mdb2->exec($sql); return (!is_a($affected, 'PEAR_Error')); } - // isUserValid function is used during access checks and determines whether user id, passed in post, is valid - // in current context. - static function isUserValid($user_id) { - // We have to cover several situations. - - global $user; - - // TODO: we are currently re-designing timesheets. - // Clients are not supposed to view them at all. - // And the post will change on_behalf user, to keep things consistent. - return false; - } - // getReportOptions prepares $options array to be used with ttReportHelper // to obtain items for timesheet view. static function getReportOptions($timesheet) { @@ -245,11 +228,6 @@ class ttTimesheetHelper { $group_by_project = MODE_PROJECTS == $trackingMode || MODE_PROJECTS_AND_TASKS == $trackingMode; $options['timesheet_id'] = $timesheet['id']; - $options['client_id'] = $timesheet['client_id']; - $options['users'] = $timesheet['user_id']; - $options['show_durarion'] = 1; - $options['show_cost'] = 1; // To include expenses. - $options['show_totals_only'] = 1; $options['group_by1'] = 'date'; if ($group_by_client || $group_by_project) { $options['group_by2'] = $group_by_client ? 'client' : 'project'; diff --git a/WEB-INF/templates/footer.tpl b/WEB-INF/templates/footer.tpl index e98faf23..c9463c88 100644 --- a/WEB-INF/templates/footer.tpl +++ b/WEB-INF/templates/footer.tpl @@ -12,7 +12,7 @@
- - {foreach $subtotals as $subtotal} - {/foreach} -
 Anuko Time Tracker 1.18.50.4808 | Copyright © Anuko | +  Anuko Time Tracker 1.18.50.4809 | Copyright © Anuko | {$i18n.footer.credits} | {$i18n.footer.license} | {$i18n.footer.improve} diff --git a/WEB-INF/templates/timesheet_view.tpl b/WEB-INF/templates/timesheet_view.tpl index 76481eed..3bd8ddd2 100644 --- a/WEB-INF/templates/timesheet_view.tpl +++ b/WEB-INF/templates/timesheet_view.tpl @@ -37,20 +37,17 @@
{$group_by_header|escape} {$i18n.label.duration}{$i18n.label.cost}
{if $subtotal['name']}{$subtotal['name']|escape}{else} {/if} {$subtotal['time']}{if $user->can('manage_invoices') || $user->isClient()}{$subtotal['cost']}{else}{$subtotal['expenses']}{/if}
 
{$i18n.label.total} {$totals['time']}{$user->currency|escape} {if $user->can('manage_invoices') || $user->isClient()}{$totals['cost']}{else}{$totals['expenses']}{/if}