aboutsummaryrefslogtreecommitdiffstats
path: root/bin/zurich-overdue-alert
diff options
context:
space:
mode:
authorMatthew Somerville <matthew-github@dracos.co.uk>2015-01-19 16:20:55 +0000
committerMatthew Somerville <matthew-github@dracos.co.uk>2015-01-19 16:35:36 +0000
commit2e8df1a5a6610c43e0c1bda15d018fa16738061b (patch)
treee06b0a33d399caf5ba0fb94186f609617496740e /bin/zurich-overdue-alert
parent7fa239a9c2122074bb65bbb0ac7d30d922a4f761 (diff)
Tidy up of bin directory.
Remove some unneeded scripts, move others to cobrand-specific directories.
Diffstat (limited to 'bin/zurich-overdue-alert')
-rwxr-xr-xbin/zurich-overdue-alert83
1 files changed, 0 insertions, 83 deletions
diff --git a/bin/zurich-overdue-alert b/bin/zurich-overdue-alert
deleted file mode 100755
index c09aef1e2..000000000
--- a/bin/zurich-overdue-alert
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/env perl
-
-# zurich-overdue-alert:
-# Send email alerts to administrators for overdue admin activities.
-#
-# Copyright (c) 2012 UK Citizens Online Democracy. All rights reserved.
-# Email: matthew@mysociety.org. WWW: http://www.mysociety.org
-
-use strict;
-use warnings;
-require 5.8.0;
-
-use DateTime;
-use CronFns;
-use FixMyStreet::App;
-
-my ($verbose, $nomail) = CronFns::options();
-
-# Only run on working days
-my $now = DateTime->now();
-exit if FixMyStreet::Cobrand::Zurich::is_public_holiday($now) or FixMyStreet::Cobrand::Zurich::is_weekend($now);
-
-my $cobrand = FixMyStreet::Cobrand->get_class_for_moniker('zurich')->new();
-my %bodies = map { $_->id => $_ } FixMyStreet::App->model("DB::Body")->all;
-
-loop_through( 'alert-moderation-overdue.txt', 0, 1, [ 'unconfirmed' ] );
-loop_through( 'alert-overdue.txt', 1, 6, 'in progress' );
-loop_through( 'alert-overdue.txt', 0, 6, ['confirmed', 'planned'] );
-
-sub loop_through {
- my ( $template, $include_parent, $days, $states ) = @_;
- my $dtf = FixMyStreet::App->model("DB")->storage->datetime_parser;
- my $date_threshold = $dtf->format_datetime(FixMyStreet::Cobrand::Zurich::sub_days( $now, $days ));
-
- my $reports = FixMyStreet::App->model("DB::Problem")->search( {
- state => $states,
- created => { '<', $date_threshold },
- bodies_str => { '!=', undef },
- } );
-
- my %to_send = ();
- while (my $row = $reports->next) {
- $to_send{$row->bodies_str} .= '* ' . $row->id . ": '" . $row->title . "'\n\n";
- }
-
- my $template_path = FixMyStreet->path_to( "templates", "email", "zurich", $template )->stringify;
- $template = Utils::read_file( $template_path );
-
- foreach my $body_id (keys %to_send) {
- send_alert( $template, $body_id, $to_send{$body_id}, $include_parent );
- }
-}
-
-sub send_alert {
- my ( $template, $body_id, $data, $include_parent ) = @_;
-
- my $body = $bodies{$body_id};
- my $body_email = $body->endpoint;
-
- my $h = {
- data => $data,
- admin_url => $cobrand->admin_base_url,
- };
-
- my $to = [ [ $body_email, $body->name ] ];
- if ( $include_parent ) {
- my $parent = $body->parent;
- my $parent_email = $parent->endpoint;
- push @$to, [ $parent_email, $parent->name ];
- }
-
- FixMyStreet::App->send_email_cron(
- {
- _template_ => $template,
- _parameters_ => $h,
- To => $to,
- From => [ FixMyStreet->config('CONTACT_EMAIL'), FixMyStreet->config('CONTACT_NAME') ],
- },
- FixMyStreet->config('CONTACT_EMAIL'),
- $nomail
- );
-}
-