$bean->setAttributes($attrs);
}
}
+
+ // getReportOptions - returns an array of fav report options from database data.
+ // Note: this function is a part of refactoring to simplify maintenance of report
+ // generating functions, as we currently have 2 sets: normal reporting (from bean),
+ // and fav report emailing (from db fields). Using options obtained from either db or bean
+ // shall allow us to use only one set of functions.
+ static function getReportOptions($id) {
+
+ // Start with getting the fields from the database.
+ $db_fields = ttFavReportHelper::getReport($id);
+ if (!$db_fields) return false;
+
+ // Prepare an array of report options.
+ $options = $db_fields; // For now, use db field names as options.
+ // Drop things we don't need in reports.
+ unset($options['id']);
+ unset($options['report_spec']); // Currently not used.
+ unset($options['status']);
+
+ // $options now is a subset of db fields from tt_fav_reports table.
+ return $options;
+ }
}
<br>
<table cellspacing="0" cellpadding="4" width="100%" border="0">
<tr>
- <td align="center"> Anuko Time Tracker 1.17.93.4286 | Copyright © <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
+ <td align="center"> Anuko Time Tracker 1.17.93.4287 | Copyright © <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>
// We have jobs to execute in user language.
// Get favorite report details.
- $report = ttFavReportHelper::getReport($val['report_id']);
+ $report = ttFavReportHelper::getReportOptions($val['report_id']);
if (!$report) continue; // Skip not found report.
// Recycle global $user object, as user settings are specific for each report.