Resuming refactoring report related functions.
authorNik Okuntseff <support@anuko.com>
Mon, 6 Aug 2018 13:49:19 +0000 (13:49 +0000)
committerNik Okuntseff <support@anuko.com>
Mon, 6 Aug 2018 13:49:19 +0000 (13:49 +0000)
WEB-INF/lib/ttReportHelper.class.php
WEB-INF/templates/footer.tpl
cron.php
report_send.php

index 4d510bb..46ce3f8 100644 (file)
@@ -657,7 +657,7 @@ class ttReportHelper {
   }
 
   // prepareReportBody - prepares an email body for report.
-  static function prepareReportBody($bean, $comment)
+  static function prepareReportBody($bean, $options, $comment)
   {
     global $user;
     global $i18n;
@@ -665,10 +665,9 @@ class ttReportHelper {
     // Determine these once as they are used in multiple places in this function.
     $canViewReports = $user->can('view_reports') || $user->can('view_all_reports');
     $isClient = $user->isClient();
-    $options = ttReportHelper::getReportOptions($bean);
 
     $items = ttReportHelper::getItems($options);
-    $group_by = $bean->getAttribute('group_by');
+    $group_by = $options['group_by'];
     if ($group_by && 'no_grouping' != $group_by)
       $subtotals = ttReportHelper::getSubtotals($options);
     $totals = ttReportHelper::getTotals($options);
@@ -700,6 +699,8 @@ class ttReportHelper {
     // Output comment.
     if ($comment) $body .= '<p>'.htmlspecialchars($comment).'</p>';
 
+// TODO: refactoring ongoing down from here...
+
     if ($bean->getAttribute('chtotalsonly')) {
       // Totals only report. Output subtotals.
 
@@ -973,7 +974,7 @@ class ttReportHelper {
   }
 
   // prepareFavReportBody - prepares an email body for a favorite report.
-  static function prepareFavReportBody($options)
+  static function prepareFavReportBody($options, $comment = null)
   {
     global $user;
     global $i18n;
@@ -1013,7 +1014,7 @@ class ttReportHelper {
     $body .= '<p style="'.$style_title.'">'.$i18n->get('form.mail.report_subject').': '.$totals['start_date'].' - '.$totals['end_date'].'</p>';
 
     // Output comment.
-    // if ($comment) $body .= '<p>'.htmlspecialchars($comment).'</p>'; // No comment for fav. reports.
+    if ($comment) $body .= '<p>'.htmlspecialchars($comment).'</p>';
 
     if ($options['show_totals_only']) {
       // Totals only report. Output subtotals.
index 8563333..c8a4919 100644 (file)
@@ -12,7 +12,7 @@
       <br>
       <table cellspacing="0" cellpadding="4" width="100%" border="0">
         <tr>
-          <td align="center">&nbsp;Anuko Time Tracker 1.17.98.4316 | Copyright &copy; <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
+          <td align="center">&nbsp;Anuko Time Tracker 1.17.98.4317 | Copyright &copy; <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
             <a href="https://www.anuko.com/lp/tt_4.htm" target="_blank">{$i18n.footer.credits}</a> |
             <a href="https://www.anuko.com/lp/tt_5.htm" target="_blank">{$i18n.footer.license}</a> |
             <a href="https://www.anuko.com/lp/tt_7.htm" target="_blank">{$i18n.footer.improve}</a>
index 1b586cf..7d76699 100644 (file)
--- a/cron.php
+++ b/cron.php
@@ -66,9 +66,9 @@ while ($val = $res->fetchRow()) {
   $user = new ttUser(null, $options['user_id']);
   if (!$user->id) continue; // Skip not found user.
 
-  // TODO: write a new function ttFavReportHelper::adjustReportOptions that will use
-  // a $user objected recycled above. Put user handling below into it.
-  // Also adjust all other options for potentially changed user access rights and group properties.
+  // TODO: write a new function ttFavReportHelper::adjustOptions that will use
+  // a $user objecte recycled above. Put user handling below into it.
+  // Also adjust remaining options for potentially changed user access rights and group properties.
   // For example, tracking mode may have changed, but fav report options are still old...
   // This needs to be fixed.
 
index d7c031f..ea6c555 100644 (file)
@@ -72,8 +72,10 @@ if ($request->isPost()) {
 
     // Obtain session bean with report attributes.
     $bean = new ActionForm('reportBean', new Form('reportForm'));
+    $options = ttReportHelper::getReportOptions($bean);
+
     // Prepare report body.
-    $body = ttReportHelper::prepareReportBody($bean, $cl_comment);
+    $body = ttReportHelper::prepareReportBody($bean, $options, $cl_comment);
 
     import('mail.Mailer');
     $mailer = new Mailer();