/** * Load an existing TimecardBug object from the database. * @param int Bug ID * @return object TimecardBug object */ static function load($p_bug_id, $p_load_updates = true) { $t_estimate_table = plugin_table('estimate', 'Timecard'); $t_query = "SELECT * FROM {$t_estimate_table} WHERE bug_id=" . db_param(); $t_result = db_query_bound($t_query, array($p_bug_id)); if (db_num_rows($t_result) < 1) { $t_project = TimecardProject::load(bug_get_field($p_bug_id, 'project_id')); return new TimecardBug($p_bug_id, $t_project->timecard, -1); } $t_row = db_fetch_array($t_result); $t_estimate = new TimecardBug($t_row['bug_id'], $t_row['timecard'], $t_row['estimate']); $t_estimate->timestamp = $t_row['timestamp']; $t_estimate->new = false; if ($p_load_updates) { $t_estimate->load_updates(); } return $t_estimate; }
/** * When creating or updating a project, save the given default timecard * string to the database. */ function project_update($p_event, $p_project_id) { if (plugin_config_get('use_timecard')) { $f_timecard = trim(gpc_get_string('plugin_timecard', '')); $t_project = TimecardProject::load($p_project_id); if ($t_project->timecard != $f_timecard) { $t_project->timecard = $f_timecard; $t_project->save(); } } }