diff options
-rw-r--r-- | perllib/FixMyStreet/Cobrand/Zurich.pm | 10 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/Zurich.pm | 10 | ||||
-rw-r--r-- | t/app/controller/report_display.t | 4 | ||||
-rw-r--r-- | t/cobrand/zurich.t | 2 | ||||
-rw-r--r-- | t/cobrand/zurich_attachments.txt | 15 | ||||
-rw-r--r-- | templates/email/zurich/problem-closed.txt | 4 | ||||
-rw-r--r-- | templates/email/zurich/problem-confirm.txt | 2 | ||||
-rw-r--r-- | templates/email/zurich/problem-external.txt | 8 | ||||
-rw-r--r-- | templates/email/zurich/problem-rejected.txt | 16 | ||||
-rw-r--r-- | templates/email/zurich/problem-wish.txt | 12 | ||||
-rw-r--r-- | templates/email/zurich/reply-autoresponse.txt | 1 | ||||
-rw-r--r-- | templates/email/zurich/submit-external-personal.txt | 17 | ||||
-rw-r--r-- | templates/email/zurich/submit-external-wish.txt | 20 | ||||
-rw-r--r-- | templates/email/zurich/submit-external.txt | 15 | ||||
-rw-r--r-- | templates/web/zurich/report/updates.html | 8 |
15 files changed, 50 insertions, 94 deletions
diff --git a/perllib/FixMyStreet/Cobrand/Zurich.pm b/perllib/FixMyStreet/Cobrand/Zurich.pm index 908550adb..3f57ecf5a 100644 --- a/perllib/FixMyStreet/Cobrand/Zurich.pm +++ b/perllib/FixMyStreet/Cobrand/Zurich.pm @@ -548,9 +548,18 @@ sub admin_report_edit { # # Note that 2 types of email may be sent # 1) _admin_send_email() sends an email to the *user*, if their email is confirmed + # # 2) setting $problem->whensent(undef) may make it eligible for generating an email # to the body (internal or external). See DBRS::Problem->send_reports for Zurich- # specific categories which are eligible for this. + # + # It looks like both of these will do: + # a) TT processing of [% ... %] directives, in FMS::App->send_email(_cron) + # b) pseudo-PHP substitution of <?=$values['name']?> which is done as + # naive substitution + # commonlib mySociety::Email + # + # So it makes sense to add new parameters as the more powerful TT (a). my $redirect = 0; my $new_cat = $c->get_param('category') || ''; @@ -858,6 +867,7 @@ sub _admin_send_email { to => [ $to ], url => $c->uri_for_email( $problem->url ), from => [ $sender, $sender_name ], + problem => $problem, } ); } diff --git a/perllib/FixMyStreet/SendReport/Zurich.pm b/perllib/FixMyStreet/SendReport/Zurich.pm index a5df06ee3..2838440cb 100644 --- a/perllib/FixMyStreet/SendReport/Zurich.pm +++ b/perllib/FixMyStreet/SendReport/Zurich.pm @@ -9,11 +9,21 @@ sub build_recipient_list { # Only one body ever, most of the time with an email endpoint my $body = @{ $self->bodies }[0]; + + # we set external_message (but default to '' in case of race condition e.g. + # Wunsch set, but external_message hasn't yet been filled in. TODO should + # we instead be holding off sending?) if ( $row->external_body ) { $body = FixMyStreet::App->model("DB::Body")->find( { id => $row->external_body } ); $h->{bodies_name} = $body->name; $h->{external_message} = $row->get_extra_metadata('external_message') || ''; } + $h->{external_message} //= ''; + + my ($west, $nord) = $row->local_coords; + $h->{west} = $west; + $h->{nord} = $nord; + my $body_email = $body->endpoint; my $parent = $body->parent; diff --git a/t/app/controller/report_display.t b/t/app/controller/report_display.t index c863f829f..6958032d9 100644 --- a/t/app/controller/report_display.t +++ b/t/app/controller/report_display.t @@ -501,10 +501,12 @@ subtest "Zurich banners are displayed correctly" => sub { description => 'jurisdiction unknown', state => 'unable to fix', banner_id => 'fixed', + # This will be 'Zust\x{e4}ndigkeit unbekannt' once the translations are updated. + banner_text => 'Jurisdiction Unknown', # We can't use _('Jurisdiction Unknown') here because # TestMech::extract_problem_banner decodes the HTML entities before # the string is passed back. - banner_text => 'Zust\x{e4}ndigkeit unbekannt', + # banner_text => 'Zust\x{e4}ndigkeit unbekannt', }, ) { subtest "banner for $test->{description}" => sub { diff --git a/t/cobrand/zurich.t b/t/cobrand/zurich.t index 1b059e192..038a2fe35 100644 --- a/t/cobrand/zurich.t +++ b/t/cobrand/zurich.t @@ -515,6 +515,8 @@ subtest "external report triggers email" => sub { FixMyStreet::override_config { ALLOWED_COBRANDS => [ 'zurich' ], }, sub { + # Set the public_response manually here because the default one will have line breaks that get escaped as HTML, causing the comparison to fail. + $report->set_extra_metadata('public_response' => 'Freundliche Gruesse Ihre Stadt Zuerich'); $report->update({ state => 'closed' }); # required to see body_external field $mech->get_ok( '/admin/report_edit/' . $report->id ); $mech->submit_form_ok( { diff --git a/t/cobrand/zurich_attachments.txt b/t/cobrand/zurich_attachments.txt index dc3b64d45..1c989c4d9 100644 --- a/t/cobrand/zurich_attachments.txt +++ b/t/cobrand/zurich_attachments.txt @@ -16,23 +16,10 @@ From: FixMyStreet <division@example.org> Gr=FCezi External Body, -Die folgende Meldung wurde auf -http://www.stadt-zuerich.ch/zueriwieneu erfasst: - =D6ffentliche URL: http://www.example.org/report/REPORT_ID -"Z=FCri wie neu" ist eine Dienstleistung der Stadt Z=FCrich zum Thema -B=FCrgerbeteiligung. Auf dieser Plattform kann die Bev=F6lkerung auf -Sch=E4den und M=E4ngel an der st=E4dtischen Infrastruktur hinweisen. Diese -Meldung wurde Ihnen von der Stadt Z=FCrich gesendet, da es Ihr -Zust=E4ndigkeitsgebiet betreffen k=F6nnte. - Bei Fragen zu "Z=FCri wie neu" wenden Sie sich bitte an -gis-zentrum@zuerich.ch. - -Freundliche Gr=FCsse - -Ihre Stadt Z=FCrich=20= +gis-zentrum@zuerich.ch.= diff --git a/templates/email/zurich/problem-closed.txt b/templates/email/zurich/problem-closed.txt index 392004504..b469e74c6 100644 --- a/templates/email/zurich/problem-closed.txt +++ b/templates/email/zurich/problem-closed.txt @@ -16,10 +16,6 @@ Ihre Meldung lautet: -Freundliche Grüsse - -Ihre Stadt Zürich - Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht darauf. diff --git a/templates/email/zurich/problem-confirm.txt b/templates/email/zurich/problem-confirm.txt index 32c3b89be..d64d54e8c 100644 --- a/templates/email/zurich/problem-confirm.txt +++ b/templates/email/zurich/problem-confirm.txt @@ -20,4 +20,6 @@ Freundliche Grüsse Ihre Stadt Zürich + + Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht darauf. diff --git a/templates/email/zurich/problem-external.txt b/templates/email/zurich/problem-external.txt index 09cc9c7ca..5645b0e1e 100644 --- a/templates/email/zurich/problem-external.txt +++ b/templates/email/zurich/problem-external.txt @@ -2,8 +2,7 @@ Subject: Züri wie neu: Meldung #[% problem.id %] Grüezi [% problem.name %] -Besten Dank für Ihre Meldung auf <<Züri wie neu>>. Wir haben Ihr Anliegen an [% problem.body(c).name %] -weitergeleitet, da es nicht in den Zuständigkeitsbereich der beteiligten Fachbereiche fällt. +[% problem.extra.public_response %] Unter: [% url %] @@ -16,11 +15,6 @@ Ihre Meldung lautet: -Freundliche Grüsse - -Ihre Stadt Zürich - - Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht darauf. diff --git a/templates/email/zurich/problem-rejected.txt b/templates/email/zurich/problem-rejected.txt index c3d375747..ac02ea19a 100644 --- a/templates/email/zurich/problem-rejected.txt +++ b/templates/email/zurich/problem-rejected.txt @@ -2,16 +2,7 @@ Subject: Züri wie neu: Meldung #[% problem.id %] Grüezi [% problem.name %] -Ihre Meldung wurde aufgrund des Inhalts zurückgewiesen. -Dies kann verschiedene Gründe haben wie zum Beispiel unzureichenden, nicht nachvollziehbaren oder diskriminierenden Inhalt. - -Bitte geben Sie die Meldung nochmals, mit möglichst detaillierten, sachlichen Informationen ein. - -Besten Dank für Ihr Verständnis. - -Freundliche Grüsse - -Ihre Stadt Zürich +[% problem.extra.public_response %] Ihre Meldung lautet: @@ -19,11 +10,6 @@ Ihre Meldung lautet: -Freundliche Grüsse - -Ihre Stadt Zürich - - Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht darauf. diff --git a/templates/email/zurich/problem-wish.txt b/templates/email/zurich/problem-wish.txt index 09cc9c7ca..b7508c316 100644 --- a/templates/email/zurich/problem-wish.txt +++ b/templates/email/zurich/problem-wish.txt @@ -2,12 +2,7 @@ Subject: Züri wie neu: Meldung #[% problem.id %] Grüezi [% problem.name %] -Besten Dank für Ihre Meldung auf <<Züri wie neu>>. Wir haben Ihr Anliegen an [% problem.body(c).name %] -weitergeleitet, da es nicht in den Zuständigkeitsbereich der beteiligten Fachbereiche fällt. - -Unter: - [% url %] -finden Sie Ihre Meldung auf der Website. +[% problem.extra.public_response %] Ihre Meldung lautet: @@ -16,11 +11,6 @@ Ihre Meldung lautet: -Freundliche Grüsse - -Ihre Stadt Zürich - - Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht darauf. diff --git a/templates/email/zurich/reply-autoresponse.txt b/templates/email/zurich/reply-autoresponse.txt index 1e79549b3..884ea6dea 100644 --- a/templates/email/zurich/reply-autoresponse.txt +++ b/templates/email/zurich/reply-autoresponse.txt @@ -7,4 +7,5 @@ Dies ist eine automatische Antwort auf Ihr E-Mail. Ihr E-Mail wurde nicht überm Falls Sie eine Meldung erfassen möchten, tun Sie das bitte über die Hauptseite: [%# link to FMZ %] + Falls Sie Fragen zu <<Züri wie neu>> haben, senden Sie ein E-Mail an gis-zentrum@zuerich.ch diff --git a/templates/email/zurich/submit-external-personal.txt b/templates/email/zurich/submit-external-personal.txt index 2d4fce606..593d047c9 100644 --- a/templates/email/zurich/submit-external-personal.txt +++ b/templates/email/zurich/submit-external-personal.txt @@ -2,11 +2,10 @@ Subject: Züri wie neu: Weitergeleitete Meldung #<?=$values['id']?> Grüezi <?=$values['bodies_name']?>, -Die folgende Meldung wurde auf http://www.stadt-zuerich.ch/zueriwieneu erfasst: +<?=$values['external_message']?> -Öffentliche URL: <?=$values['url']?> -<?=$values['external_message']?> +Öffentliche URL: <?=$values['url']?> Name des Meldenden: <?=$values['name']?> @@ -14,15 +13,5 @@ Email des Meldenden: <?=$values['email']?> Telefonnummer des Meldenden: <?=$values['phone']?> -"Züri wie neu" ist ein Pilotprojekt der Stadt Zürich zum Thema -Bürgerbeteiligung. Auf dieser Plattform kann die Bevölkerung auf Schäden und -Mängel an der städtischen Infrastruktur hinweisen. Diese Meldung wurde Ihnen -von der Stadt Zürich gesendet, da es Ihr Zuständigkeitsgebiet betreffen könnte. - -Bei Fragen zum Pilotprojekt "Züri wie neu" wenden Sie sich bitte an -gis-zentrum@zuerich.ch. - - -Freundliche Grüsse -Ihre Stadt Zürich +Bei Fragen zu "Züri wie neu" wenden Sie sich bitte an gis-zentrum@zuerich.ch.
\ No newline at end of file diff --git a/templates/email/zurich/submit-external-wish.txt b/templates/email/zurich/submit-external-wish.txt index 8a6dc34dd..ec472f95f 100644 --- a/templates/email/zurich/submit-external-wish.txt +++ b/templates/email/zurich/submit-external-wish.txt @@ -2,21 +2,19 @@ Subject: Züri wie neu: Weitergeleitete Meldung #<?=$values['id']?> Grüezi <?=$values['bodies_name']?>, -Die folgende Meldung wurde auf http://www.stadt-zuerich.ch/zueriwieneu erfasst: +<?=$values['external_message']?> -Öffentliche URL: <?=$values['url']?> -<?=$values['external_message']?> +Name des Meldenden: <?=$values['name']?> -"Züri wie neu" ist eine Dienstleistung der Stadt Zürich zum Thema -Bürgerbeteiligung. Auf dieser Plattform kann die Bevölkerung auf Schäden und -Mängel an der städtischen Infrastruktur hinweisen. -Diese Meldung wurde Ihnen von der Stadt Zürich gesendet, da es Ihr -Zuständigkeitsgebiet betreffen könnte. +Email des Meldenden: <?=$values['email']?> -Bei Fragen zu "Züri wie neu" wenden Sie sich bitte an gis-zentrum@zuerich.ch. +Telefonnummer des Meldenden: <?=$values['phone']?> +Meldung: <?=$values['detail']?> -Freundliche Grüsse +Standort in AV-Online anzeigen: +http://webgis.intra.stzh.ch/AV_Online/Direct.asp?Map=AV&Search=Koord&West=<?=$values['west']?>&Nord=<?=$values['nord']?>&B=300 -Ihre Stadt Zürich + +Bei Fragen zu "Züri wie neu" wenden Sie sich bitte an gis-zentrum@zuerich.ch. diff --git a/templates/email/zurich/submit-external.txt b/templates/email/zurich/submit-external.txt index 8a6dc34dd..d85c2f84f 100644 --- a/templates/email/zurich/submit-external.txt +++ b/templates/email/zurich/submit-external.txt @@ -2,21 +2,10 @@ Subject: Züri wie neu: Weitergeleitete Meldung #<?=$values['id']?> Grüezi <?=$values['bodies_name']?>, -Die folgende Meldung wurde auf http://www.stadt-zuerich.ch/zueriwieneu erfasst: - -Öffentliche URL: <?=$values['url']?> - <?=$values['external_message']?> -"Züri wie neu" ist eine Dienstleistung der Stadt Zürich zum Thema -Bürgerbeteiligung. Auf dieser Plattform kann die Bevölkerung auf Schäden und -Mängel an der städtischen Infrastruktur hinweisen. -Diese Meldung wurde Ihnen von der Stadt Zürich gesendet, da es Ihr -Zuständigkeitsgebiet betreffen könnte. - -Bei Fragen zu "Züri wie neu" wenden Sie sich bitte an gis-zentrum@zuerich.ch. +Öffentliche URL: <?=$values['url']?> -Freundliche Grüsse -Ihre Stadt Zürich +Bei Fragen zu "Züri wie neu" wenden Sie sich bitte an gis-zentrum@zuerich.ch.
\ No newline at end of file diff --git a/templates/web/zurich/report/updates.html b/templates/web/zurich/report/updates.html index 786ecd582..ea71f2b1c 100644 --- a/templates/web/zurich/report/updates.html +++ b/templates/web/zurich/report/updates.html @@ -5,10 +5,10 @@ <div class="update-wrap"> <div class="update-text"> <p class="meta-2">[% prettify_dt( problem.lastupdate, 'zurich' ) %]</p> - [% IF problem.state == 'fixed - council' %] - [% add_links( problem.extra.public_response ) | html_para %] - [% ELSIF problem.state == 'closed' AND problem.external_body %] - <p>[% tprintf( loc('Assigned to %s'), problem.body(c).name ) %]</p> + [%# XXX following should honour zurich_closed_states instead? %] + [% IF problem.state == 'fixed - council' + || ( problem.external_body AND problem.state == 'closed' ) %] + [% add_links( problem.extra.public_response ) | html_para %] [% END %] </div> </div> |