" . t("cvs messages") . ""; } return $links ? $links : array(); } function cvs_cron() { if (time() - variable_get("cvs_cron_last", 0) > variable_get("cvs_cron_time", time())) { variable_set("cvs_cron_last", time()); $result = db_query("SELECT * FROM cvs WHERE status = '0' ORDER BY timestamp DESC LIMIT 50"); while ($cvs = db_fetch_object($result)) { $body .= "File: $cvs->files\nDate: ". format_date($cvs->timestamp) ."\nUser: $cvs->user\n\n$cvs->message\n----------------------------------------------------------------------\n"; } $result = db_query("UPDATE cvs SET status = '1'"); if ($body) mail(variable_get(cvs_mail, "root@localhost"), "cvs log messages", $body, "From: no-reply"); } } function cvs_conf_options() { $period = array(43200 => format_interval(43200), 86400 => format_interval(86400), 172800 => format_interval(172800), 259200 => format_interval(259200), 604800 => format_interval(604800), 1209600 => format_interval(1209600)); $output .= form_textfield("Digest recepients", "cvs_mail", variable_get("cvs_mail", "root@localhost"), 30, 55, "The e-mail address to mail the CVS log messages to. Multiple recipients can be specified by putting a comma between each address."); $output .= form_select("Digest interval", "cvs_cron_time" , variable_get("cvs_cron_time", 86400), $period, "The time interval at which batched CVS digests are dispatched. Requires crontab."); return $output; } function cvs_page() { global $theme; if (user_access("access cvs messages")) { $result = db_query("SELECT * FROM cvs ORDER BY timestamp DESC LIMIT 50"); while ($cvs = db_fetch_object($result)) { $output .= "File: $cvs->files
"; $output .= "Date: ". format_date($cvs->timestamp) ."
"; $output .= "User: $cvs->user
"; $output .= "\n". nl2br(htmlentities($cvs->message)) ."
"; } $theme->header(); $theme->box("CVS commit messages", "
$output
"); $theme->footer(); } else { $theme->header(); $theme->box(t("Access denied"), message_access()); $theme->footer(); } } ?>