diff options
Diffstat (limited to 'templates')
72 files changed, 631 insertions, 450 deletions
diff --git a/templates/email/default/login.txt b/templates/email/default/login.txt index 608d99ee9..762407b01 100644 --- a/templates/email/default/login.txt +++ b/templates/email/default/login.txt @@ -1,4 +1,4 @@ -Subject: [% loc('Your FixMyStreet.com account details') %] +Subject: Your FixMyStreet.com account details Please click on the link below to confirm your email address. Then you will be able to view your problem reports and manage them more easily. diff --git a/templates/email/zurich/alert-moderation-overdue.txt b/templates/email/zurich/alert-moderation-overdue.txt index c3aab66d2..c31d5c349 100644 --- a/templates/email/zurich/alert-moderation-overdue.txt +++ b/templates/email/zurich/alert-moderation-overdue.txt @@ -1,6 +1,6 @@ -Subject: eskalierte Meldungen auf Fix my Zurich +Subject: eskalierte Meldungen auf Züri wie neu -Die folgenden Meldungen auf Fix my Zurich sind älter als einen Tag und müssen dringend bearbeitet werden: +Die folgenden Meldungen auf <<Züri wie neu>> sind älter als einen Tag und müssen dringend bearbeitet werden: <?=$values['data']?> diff --git a/templates/email/zurich/alert-overdue.txt b/templates/email/zurich/alert-overdue.txt index 3301feee5..92bb58f26 100644 --- a/templates/email/zurich/alert-overdue.txt +++ b/templates/email/zurich/alert-overdue.txt @@ -1,4 +1,4 @@ -Subject: Rückmeldung erforderlich auf Fix my Zurich +Subject: Rückmeldung erforderlich auf Züri wie neu Die folgenden Meldungen wurden eskaliert, da sie nicht innerhalb von fünf Tagen beantwortet worden sind: diff --git a/templates/email/zurich/login.txt b/templates/email/zurich/login.txt new file mode 100644 index 000000000..6c7b91330 --- /dev/null +++ b/templates/email/zurich/login.txt @@ -0,0 +1,6 @@ +Subject: Ihr Züri wie neu Konto + +Bitte klicken Sie auf den Link um Ihre E-Mail-Adresse zu bestätigen und sich direkt einzuloggen. + +[% c.uri_for_action( 'auth/token', token ) %] + diff --git a/templates/email/zurich/problem-closed.txt b/templates/email/zurich/problem-closed.txt index d7482d8eb..bc0a4141f 100644 --- a/templates/email/zurich/problem-closed.txt +++ b/templates/email/zurich/problem-closed.txt @@ -1,17 +1,18 @@ -Subject: FixMyZurich: Meldung #[% problem.id %] +Subject: Züri wie neu: Meldung #[% problem.id %] -Guten Tag [% problem.name %] +Grüezi [% problem.name %] -Antwort auf Ihre Meldung: +Besten Dank für Ihre Meldung auf <<Züri wie neu>>. Ihr Anliegen wurde wie folgt beantwortet: [% problem.extra.public_response %] -Um die Meldung auf der Webseite zu betrachen, klicken Sie auf folgenden Link: +Unter: [% url %] +finden Sie Ihre Meldung auf der Website. -Ihre Meldung: +Ihre Meldung lautet: [% problem.detail %] -Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht auf dieses E-Mail. +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 401591681..9518481e5 100755..100644 --- a/templates/email/zurich/problem-confirm.txt +++ b/templates/email/zurich/problem-confirm.txt @@ -1,13 +1,17 @@ -Subject: Fix my Zurich: Meldung #[% report.id %] +Subject: Züri wie neu: Meldung #[% report.id %] -Guten Tag [% report.name %] +Grüezi [% report.name %] -Bitte klicken Sie auf den untenstehenden Link, um Ihre Meldung zu bestätigen. Falls der Link nicht funktioniert, kopieren Sie ihn in Ihren Browser: +Besten Dank für Ihre Meldung auf <<Züri wie neu>>. Klicken Sie bitte auf diesen Link, um Ihre E-Mail-Adresse zu bestätigen und über den Status der Meldung informiert zu bleiben. Falls der Link nicht funktioniert, kopieren Sie ihn in Ihren Browser: [% token_url %] -Ihre Meldung: +Wir werden Ihr Anliegen innerhalb der nächsten sechs Arbeitstage beantworten. + + +Ihre Meldung lautet: [% report.detail %] -Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht auf dieses E-Mail. + +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 bcc1468d4..21bd364ed 100644 --- a/templates/email/zurich/problem-external.txt +++ b/templates/email/zurich/problem-external.txt @@ -1,15 +1,17 @@ -Subject: FixMyZurich: Meldung #[% problem.id %] +Subject: Züri wie neu: Meldung #[% problem.id %] -Guten Tag [% problem.name %] +Grüezi [% problem.name %] -Ihre Meldung wurde an [% problem.body(c).name %] weitergeleitet. +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 die Zuständigkeit der Stadt Zürich fällt. -Um die Meldung auf der Webseite zu betrachen, klicken Sie auf folgenden Link: +Unter: [% url %] +finden Sie Ihre Meldung auf der Website. -Ihre Meldung: + +Ihre Meldung lautet: [% problem.detail %] -Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht auf dieses E-Mail. +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 447aeaefb..99917f075 100644 --- a/templates/email/zurich/problem-rejected.txt +++ b/templates/email/zurich/problem-rejected.txt @@ -1,12 +1,14 @@ -Subject: Fix my Zurich: Meldung #[% problem.id %] +Subject: Züri wie neu: Meldung #[% problem.id %] -Guten Tag [% problem.name %] +Grüezi [% problem.name %] -Ihre Meldung wurde aufgrund des Inhalts zurückgewiesen. +Ihre Meldung wurde aufgrund des Inhalts zurückgewiesen: +Die Stadt Zürich toleriert keine beleidigenden, rassistischen oder sexistischen Meldungen. Offensichtliche Falschmeldungen werden nicht behandelt. -Ihre Meldung: + +Ihre Meldung lautet: [% problem.detail %] -Dieses E-Mail wurde automatisch generiert. Bitte antworten Sie nicht auf dieses E-Mail. +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 be927f72b..c47a6186f 100755 --- a/templates/email/zurich/reply-autoresponse.txt +++ b/templates/email/zurich/reply-autoresponse.txt @@ -7,4 +7,4 @@ 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 Fix my Zurich haben, senden Sie ein E-Mail an gis-zentrum@zuerich.ch
+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 36768d3bb..1c4320af1 100644 --- a/templates/email/zurich/submit-external-personal.txt +++ b/templates/email/zurich/submit-external-personal.txt @@ -1,13 +1,13 @@ -Subject: FixMyZurich: Neue Meldung #<?=$values['id']?> +Subject: Züri wie neu: Neue Meldung #<?=$values['id']?> -Guten Tag <?=$values['bodies_name']?>, +Grüezi <?=$values['bodies_name']?>, Diese Meldung wurde Ihnen von der Stadt Zürich gesendet, da es Ihr Zuständigkeitsgebiet betreffen könnte. Öffentliche URL: <?=$values['url']?> -Reporter name: <?=$values['name']?> +Name des Meldenden: <?=$values['name']?> -Reporter email: <?=$values['email']?> +Email des Meldenden: <?=$values['email']?> -Reporter phone: <?=$values['phone']?> +Telefonnummer des Meldenden: <?=$values['phone']?> diff --git a/templates/email/zurich/submit-external.txt b/templates/email/zurich/submit-external.txt index 3e07b0664..ec497f862 100644 --- a/templates/email/zurich/submit-external.txt +++ b/templates/email/zurich/submit-external.txt @@ -1,6 +1,6 @@ -Subject: FixMyZurich: Neue Meldung #<?=$values['id']?> +Subject: Züri wie neu: Neue Meldung #<?=$values['id']?> -Guten Tag <?=$values['bodies_name']?>, +Grüezi <?=$values['bodies_name']?>, Diese Meldung wurde Ihnen von der Stadt Zürich gesendet, da es Ihr Zuständigkeitsgebiet betreffen könnte. diff --git a/templates/email/zurich/submit-feedback-pending.txt b/templates/email/zurich/submit-feedback-pending.txt index fbf9cafb9..dbdd9eedb 100755 --- a/templates/email/zurich/submit-feedback-pending.txt +++ b/templates/email/zurich/submit-feedback-pending.txt @@ -1,8 +1,8 @@ -Subject: FixMyZurich: Meldung #<?=$values['id']?> bereit für Feedback +Subject: Züri wie neu: Meldung #<?=$values['id']?> bereit für Feedback Guten Tag <?=$values['bodies_name']?>, -Diese Meldung wurde vom Fachbereich abschliessend beantwortet und kann nun auf Fix My Zurich beantwortet und abgeschlossen werden. +Diese Meldung wurde vom Fachbereich abschliessend beantwortet und kann nun auf Züri wie neu beantwortet und abgeschlossen werden. Öffentliche URL: <?=$values['url']?> diff --git a/templates/email/zurich/submit-in-progress.txt b/templates/email/zurich/submit-in-progress.txt index 809ba4653..3e2254296 100644 --- a/templates/email/zurich/submit-in-progress.txt +++ b/templates/email/zurich/submit-in-progress.txt @@ -1,4 +1,4 @@ -Subject: FixMyZurich: Neue Meldung #<?=$values['id']?> +Subject: Züri wie neu: Neue Meldung #<?=$values['id']?> Guten Tag <?=$values['bodies_name']?>, diff --git a/templates/email/zurich/submit.txt b/templates/email/zurich/submit.txt index f55b66e18..15aea7504 100644 --- a/templates/email/zurich/submit.txt +++ b/templates/email/zurich/submit.txt @@ -1,4 +1,4 @@ -Subject: FixMyZurich: Neue Meldung #<?=$values['id']?> +Subject: Züri wie neu: Neue Meldung #<?=$values['id']?> Guten Tag <?=$values['bodies_name']?>, diff --git a/templates/web/bromley/report/display.html b/templates/web/bromley/report/display.html index 329d7ace9..67802e82a 100644 --- a/templates/web/bromley/report/display.html +++ b/templates/web/bromley/report/display.html @@ -2,7 +2,7 @@ PROCESS "report/photo-js.html"; PROCESS "maps/${map.type}.html"; - problem_title = problem.title _ ' - ' _ loc('Viewing a problem'); + problem_title = problem.title_safe _ ' - ' _ loc('Viewing a problem'); INCLUDE 'header.html' title = problem_title rss = [ loc('Updates to this problem, FixMyStreet'), "/rss/$problem.id" ] diff --git a/templates/web/default/admin/flagged.html b/templates/web/default/admin/flagged.html index 5af92a23c..fc8b1fae1 100644 --- a/templates/web/default/admin/flagged.html +++ b/templates/web/default/admin/flagged.html @@ -9,14 +9,8 @@ <th>[% loc('ID') %]</th> <th>[% loc('Title') %]</th> <th>[% loc('Name') %]</th> - <th>[% loc('Email') %]</th> - <th>[% loc('Council') %]</th> - <th>[% loc('Category') %]</th> - <th>[% loc('Anonymous') %]</th> - <th>[% loc('Cobrand') %]</th> - <th>[% loc('Created') %]</th> + <th>[% loc('Body') %]</th> <th>[% loc('State') %]</th> - <th>[% loc('When sent') %]</th> <th>*</th> </tr> [% INCLUDE 'admin/problem_row.html' %] diff --git a/templates/web/default/admin/header.html b/templates/web/default/admin/header.html index 93254f5e3..6282bf383 100644 --- a/templates/web/default/admin/header.html +++ b/templates/web/default/admin/header.html @@ -1,4 +1,4 @@ -[% INCLUDE 'header.html' admin = 1, bodyclass = 'fullwidthpage' %] +[% INCLUDE 'header.html' admin = 1, bodyclass = 'fullwidthpage admin' %] <style type="text/css"> dt { clear: left; float: left; font-weight: bold; } dd { margin-left: 8em; } diff --git a/templates/web/default/admin/list_updates.html b/templates/web/default/admin/list_updates.html index ff0ec2f31..681337844 100644 --- a/templates/web/default/admin/list_updates.html +++ b/templates/web/default/admin/list_updates.html @@ -1,3 +1,4 @@ +[% IF updates.size %] <h2>[% loc('Updates') %]</h2> <table cellspacing="0" cellpadding="2" border="1"> @@ -36,3 +37,4 @@ </tr> [% END -%] </table> +[% END %] diff --git a/templates/web/default/admin/problem_row.html b/templates/web/default/admin/problem_row.html index 1533f8dd2..ec8fda6c5 100644 --- a/templates/web/default/admin/problem_row.html +++ b/templates/web/default/admin/problem_row.html @@ -1,6 +1,6 @@ [%- FOR problem IN problems %] <tr[% ' class="adminhidden"' IF problem.state == 'hidden' %]> - <td>[%- IF problem.is_visible -%] + <td class="record-id">[%- IF problem.is_visible -%] [%- cobrand_data = problem.cobrand_data %] [%- cobrand_data = c.data_for_generic_problem IF !problem.cobrand %] <a href="[% c.uri_for_email( '/report', problem.id, cobrand_data ) %]">[% problem.id %]</a> @@ -8,26 +8,30 @@ [%- problem.id %] [%- END -%]</td> <td>[% PROCESS value_or_nbsp value=problem.title %]</td> - <td>[% PROCESS value_or_nbsp value=problem.name %]</td> - <td>[% PROCESS value_or_nbsp value=problem.user.email %]</td> - <td>[%- IF edit_body_contacts -%] - [% FOR body IN problem.bodies.values %] - <a href="[% c.uri_for('body', body.id ) %]">[% PROCESS value_or_nbsp value=body.name %]</a> - [% END %] - [%- ELSE -%] - [%- PROCESS value_or_nbsp value=problem.bodies_str -%] - [%- END -%]</td> - <td>[% PROCESS value_or_nbsp value=problem.category %]</td> - <td>[% IF problem.anonymous %][% loc('Yes') %][% ELSE %][% loc('No') %][% END %]</td> - <td>[% problem.cobrand %]<br>[% problem.cobrand_data | html %]</td> - <td>[% PROCESS format_time time=problem.created %]</td> - <td>[% problem.state %]<small> - [%- IF problem.is_visible %]<br>[% loc('Confirmed:' ) %] [% PROCESS format_time time=problem.confirmed %][% END -%] - [%- IF problem.is_fixed %]<br>[% loc('Fixed:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%] - [%- IF problem.is_closed %]<br>[% loc('Closed:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%] - [%- IF problem.is_open %]<br>[% loc('Last update:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%]</small> - </td> - <td>[% PROCESS format_time time=problem.whensent %]</td> + <td> + [% PROCESS value_or_nbsp value=problem.name %] + <br>[% PROCESS value_or_nbsp value=problem.user.email %] + <br>[% loc('Anonymous') %]: [% IF problem.anonymous %][% loc('Yes') %][% ELSE %][% loc('No') %][% END %] + </td> + <td> + [% PROCESS value_or_nbsp value=problem.category %] + <br>[%- IF edit_body_contacts -%] + [% FOR body IN problem.bodies.values %] + <a href="[% c.uri_for('body', body.id ) %]">[% PROCESS value_or_nbsp value=body.name %]</a> + [% END %] + [%- ELSE -%] + [%- PROCESS value_or_nbsp value=problem.bodies_str -%] + [%- END -%] + <br>[% problem.cobrand %]<br>[% problem.cobrand_data | html %] + </td> + <td>[% problem.state %]<br><small> + [% loc('Created') %]: [% PROCESS format_time time=problem.created %] + <br>[% loc('When sent') %]: [% PROCESS format_time time=problem.whensent %] + [%- IF problem.is_visible %]<br>[% loc('Confirmed:' ) %] [% PROCESS format_time time=problem.confirmed %][% END -%] + [%- IF problem.is_fixed %]<br>[% loc('Fixed:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%] + [%- IF problem.is_closed %]<br>[% loc('Closed:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%] + [%- IF problem.is_open %]<br>[% loc('Last update:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%] + </small></td> <td><a href="[% c.uri_for( 'report_edit', problem.id ) %]">[% loc('Edit') %]</a></td> </tr> [%- END -%] diff --git a/templates/web/default/admin/report_blocks.html b/templates/web/default/admin/report_blocks.html index bb9f34cb9..c2cffc352 100644 --- a/templates/web/default/admin/report_blocks.html +++ b/templates/web/default/admin/report_blocks.html @@ -22,3 +22,21 @@ [% this_date.strftime('%d.%m.%Y') %] [% ELSE %][% no_time || ' ' %][% END %][% no_time = '' %] [%- END %] + +[% BLOCK sort_link %][% IF order == choice %][% c.uri_with( d => 1 - dir ) %][% ELSE %][% c.uri_with( { o => choice, d => 0 } ) %][% END %][% END %] + +[% BLOCK sort_arrow %] + [% IF order == choice %] + <span style="font-size:50%"> + [% IF dir %] + ▼ + [% ELSE %] + ▲ + [% END %] + </span> + [% ELSE %] + <span style="font-size:50%; color: #999;"> + ▲ + </span> + [% END %] +[% END %] diff --git a/templates/web/default/admin/report_edit.html b/templates/web/default/admin/report_edit.html index 8d0b8df88..91af70d14 100644 --- a/templates/web/default/admin/report_edit.html +++ b/templates/web/default/admin/report_edit.html @@ -57,7 +57,6 @@ [% photo = problem.get_photo_params %] <li><img alt="" height="[% photo.height %]" width="[% photo.width %]" src="[% c.cobrand.base_url %][% photo.url %]"> <br> -[% IF rotated %]Photo may be cached for a while.<br>[% END %] <input type="submit" name="rotate_photo" value="[% loc('Rotate Left') %]"> <input type="submit" name="rotate_photo" value="[% loc('Rotate Right') %]"> <br> diff --git a/templates/web/default/admin/reports.html b/templates/web/default/admin/reports.html index 600f2b436..d57b2f53e 100644 --- a/templates/web/default/admin/reports.html +++ b/templates/web/default/admin/reports.html @@ -2,31 +2,26 @@ [% PROCESS 'admin/report_blocks.html' %] <form method="get" action="[% c.uri_for('reports') %]" enctype="application/x-www-form-urlencoded" accept-charset="utf-8"> - <p><label for="search">[% loc('Search:') %]</label> <input type="text" name="search" size="30" id="search"> + <p><label for="search">[% loc('Search:') %]</label> <input type="text" name="search" size="30" id="search" value="[% searched | html %]"> </form> - -[% IF searched %] +[% IF problems.size %] <table cellspacing="0" cellpadding="2" border="1"> <tr> <th>[% loc('ID') %]</th> <th>[% loc('Title') %]</th> <th>[% loc('Name') %]</th> - <th>[% loc('Email') %]</th> <th>[% loc('Body') %]</th> - <th>[% loc('Category') %]</th> - <th>[% loc('Anonymous') %]</th> - <th>[% loc('Cobrand') %]</th> - <th>[% loc('Created') %]</th> <th>[% loc('State') %]</th> - <th>[% loc('When sent') %]</th> <th>*</th> </tr> [% INCLUDE 'admin/problem_row.html' %] </table> -[% INCLUDE 'admin/list_updates.html' %] +[% INCLUDE 'pagination.html', admin = 1, param = 'p' IF pager %] [% END %] +[% INCLUDE 'admin/list_updates.html' %] + [% INCLUDE 'admin/footer.html' %] diff --git a/templates/web/default/admin/timeline.html b/templates/web/default/admin/timeline.html index 4058f7f06..2c77e3fbd 100644 --- a/templates/web/default/admin/timeline.html +++ b/templates/web/default/admin/timeline.html @@ -34,7 +34,7 @@ [% CASE 'alertSub' %] [% tprintf(loc("Alert %d created for %s, type %s, parameters %s / %s"), item.obj.id, item.obj.user.email, item.obj.alert_type.ref, item.obj.parameter, item.obj.parameter2) | html %] [% CASE 'alertDel' %] - [% tprintf(loc("Alert %d disabled (created %s)"), item.obj.id, item.obj.whensubscribed_local.strftime('%H:%M:%S %e %B %Y') ) %] + [% tprintf(loc("Alert %d disabled (created %s)"), item.obj.id, item.obj.whensubscribed.strftime('%H:%M:%S %e %B %Y') ) %] [%- END %] <br /> [%- END %] diff --git a/templates/web/default/admin/user-form.html b/templates/web/default/admin/user-form.html index eec54d447..9c60ec940 100644 --- a/templates/web/default/admin/user-form.html +++ b/templates/web/default/admin/user-form.html @@ -1,7 +1,7 @@ <form method="post" action="[% c.uri_for( 'user_edit', user.id ) %]" enctype="application/x-www-form-urlencoded" accept-charset="utf-8"> <input type="hidden" name="token" value="[% token %]" > <input type="hidden" name="submit" value="1" > - <ul> + <ul class="no-bullets"> <li>[% loc('Name:') %] <input type='text' name='name' id='name' value='[% user.name | html %]'></li> <li>[% loc('Email:') %] <input type='text' id='email' name='email' value='[% user.email | html %]'></li> <li>[% loc('Body:') %] <select id='body' name='body'> diff --git a/templates/web/default/admin/users.html b/templates/web/default/admin/users.html index de0b74746..70833ff85 100644 --- a/templates/web/default/admin/users.html +++ b/templates/web/default/admin/users.html @@ -5,7 +5,7 @@ <p><label for="search">[% loc('Search:') %]</label> <input type="text" name="search" size="30" id="search" value="[% searched | html %]"> </form> -[% IF searched %] +[% IF users.size %] <table cellspacing="0" cellpadding="2" border="1"> <tr> @@ -30,10 +30,11 @@ [%- END -%] </table> -[% ELSE %] +[% END %] +[% IF NOT searched %] <h2>[% loc('Add user') %]</h2> -[% INCLUDE 'admin/user-form.html' %] +[% INCLUDE 'admin/user-form.html', user = '' %] [% END %] diff --git a/templates/web/default/alert/index.html b/templates/web/default/alert/index.html index 1f0635ae4..36c0daf91 100644 --- a/templates/web/default/alert/index.html +++ b/templates/web/default/alert/index.html @@ -40,9 +40,11 @@ To find out what local alerts we have for you, please enter your [% c.cobrand.co <div class="sticky-sidebar" id="alert_recent"> <aside> <h2>[% loc('Some photos of recent reports') %]</h2> - [% FOREACH p IN photos %] + [% FOREACH p IN photos; + photo = p.get_photo_params; + %] <a href="/report/[% p.id %]"><img border="0" height="100" - src="/photo/[% p.id %].tn.jpeg" alt="[% p.title | html %]" title="[% p.title | html %]"></a> + src="[% photo.url_tn %]" alt="[% p.title | html %]" title="[% p.title | html %]"></a> [% END %] </aside> </div> diff --git a/templates/web/default/alert/list.html b/templates/web/default/alert/list.html index 20ebbf455..447bfcd76 100644 --- a/templates/web/default/alert/list.html +++ b/templates/web/default/alert/list.html @@ -24,9 +24,11 @@ <div id="alert_photos" class="sticky-sidebar"> <aside> <h2>[% loc('Photos of recent nearby reports') %]</h2> - [% FOREACH p IN photos %] + [% FOREACH p IN photos; + photo = p.get_photo_params; + %] <a href="/report/[% p.id %]"><img border="0" height="100" - src="/photo/[% p.id %].tn.jpeg" alt="[% p.title | html %]" title="[% p.title | html %]"></a> + src="[% photo.url_tn %]" alt="[% p.title | html %]" title="[% p.title | html %]"></a> [% END %] </aside> </div> diff --git a/templates/web/default/around/around_map_list_items.html b/templates/web/default/around/around_map_list_items.html index 655d8bd25..da75561b5 100644 --- a/templates/web/default/around/around_map_list_items.html +++ b/templates/web/default/around/around_map_list_items.html @@ -5,7 +5,7 @@ <li> <a href="[% c.uri_for('/report', p.problem.id ) %]">[% p.problem.title | html %]</a> - <small>[% prettify_dt( p.problem.confirmed_local, 1 ) %], [% dist %]km</small> + <small>[% prettify_dt( p.problem.confirmed, 1 ) %], [% dist %]km</small> [% IF p.problem.is_fixed %] <small>[% loc('(fixed)') %]</small> [% ELSIF p.problem.is_closed %] diff --git a/templates/web/default/around/on_map_list_items.html b/templates/web/default/around/on_map_list_items.html index 1022c88a0..70a071406 100644 --- a/templates/web/default/around/on_map_list_items.html +++ b/templates/web/default/around/on_map_list_items.html @@ -2,7 +2,7 @@ [% FOREACH p IN on_map %] <li> <a href="[% c.uri_for('/report', p.id ) %]">[% p.title | html %]</a> - <small>[% prettify_dt( p.confirmed_local, 1 ) %]</small> + <small>[% prettify_dt( p.confirmed, 1 ) %]</small> [% IF p.is_fixed %] <small>[% loc('(fixed)') %]</small> [% ELSIF p.is_closed %] diff --git a/templates/web/default/auth/token.html b/templates/web/default/auth/token.html index 5fa69ab21..361d4fbd5 100644 --- a/templates/web/default/auth/token.html +++ b/templates/web/default/auth/token.html @@ -4,13 +4,10 @@ <h1>[% loc('Error') %]</h1> -<p>We have not been able to confirm your account - sorry. This may be because:</p> - -<ul> - <li>Link too old or already used</li> - <li>URL not copied correctly</li> - [%# FIXME - add more reasons here %] -</ul> +<p> + [% loc('We have not been able to confirm your account - sorry.') %] + [% loc('This may be because the link is too old or already used, or the address was not copied correctly.') %] +</p> [% ELSE %] diff --git a/templates/web/default/contact/index.html b/templates/web/default/contact/index.html index cb87362ba..73e94fb33 100644 --- a/templates/web/default/contact/index.html +++ b/templates/web/default/contact/index.html @@ -18,9 +18,9 @@ <blockquote> <p> [% IF update.anonymous %] - [% tprintf( loc('Update below added anonymously at %s'), prettify_dt( update.confirmed_local ) ) %] + [% tprintf( loc('Update below added anonymously at %s'), prettify_dt( update.confirmed ) ) %] [% ELSE %] - [% tprintf( loc('Update below added by %s at %s'), update.name, prettify_dt( update.confirmed_local ) ) | html %] + [% tprintf( loc('Update below added by %s at %s'), update.name, prettify_dt( update.confirmed ) ) | html %] [% END %] </p> @@ -38,13 +38,13 @@ </p> <blockquote> - <h2>[% problem.title | html %]</h2> + <h2>[% problem.title_safe | html %]</h2> <p> [% IF problem.anonymous %] - [% tprintf( loc('Reported anonymously at %s'), prettify_dt( problem.confirmed_local ) ) %] + [% tprintf( loc('Reported anonymously at %s'), prettify_dt( problem.confirmed ) ) %] [% ELSE %] - [% tprintf( loc('Reported by %s at %s'), problem.user.name, prettify_dt( problem.confirmed_local ) ) | html %] + [% tprintf( loc('Reported by %s at %s'), problem.user.name, prettify_dt( problem.confirmed ) ) | html %] [% END %] </p> diff --git a/templates/web/default/front/stats.html b/templates/web/default/front/stats.html index eae66018b..5367f1118 100644 --- a/templates/web/default/front/stats.html +++ b/templates/web/default/front/stats.html @@ -36,10 +36,8 @@ <div id="front_stats"> <div>[% tprintf( new_text, stats.new ) | comma %]</div> - [% IF c.cobrand.moniker != 'emptyhomes' %] <div>[% tprintf( fixed_text, stats.fixed ) | comma %]</div> [% IF c.cobrand.moniker != 'zurich' %] <div>[% tprintf( updates_text, stats.updates ) | comma %]</div> [% END %] - [% END %] </div> diff --git a/templates/web/default/index.html b/templates/web/default/index.html index beaeefb20..6ae9db3e8 100644 --- a/templates/web/default/index.html +++ b/templates/web/default/index.html @@ -41,9 +41,11 @@ <h2>[% loc('Recently reported problems') %]</h2> [% IF recent_photos.size %] <p id="front_photos"> - [% FOREACH p IN recent_photos %] + [% FOREACH p IN recent_photos; + photo = p.get_photo_params; + %] <a href="/report/[% p.id %]"><img border="0" height="100" - src="/photo/[% p.id %].tn.jpeg" alt="[% p.title | html %]" title="[% p.title | html %]"></a> + src="[% photo.url_tn %]" alt="[% p.title | html %]" title="[% p.title | html %]"></a> [% END %] </p> [% END %] @@ -53,7 +55,7 @@ [% FOREACH p IN probs %] <li> <a href="/report/[% p.id %]">[% p.title | html %]</a> - <small>[% prettify_dt( p.confirmed_local, 1 ) %]</small> + <small>[% prettify_dt( p.confirmed, 1 ) %]</small> </li> [% END %] </ul> diff --git a/templates/web/default/my/my.html b/templates/web/default/my/my.html index cb9b0dd99..a6e4000df 100644 --- a/templates/web/default/my/my.html +++ b/templates/web/default/my/my.html @@ -53,7 +53,7 @@ END %] <li>“[% u.text | html %]” – <a href="[% c.uri_for( '/report', u.problem_id ) %]#update_[% u.id %]">[% u.problem.title | html %]</a>. <em class="council_sent_info"> - [% tprintf( loc("Added %s"), prettify_dt( u.confirmed_local, 'date' ) ) %] + [% tprintf( loc("Added %s"), prettify_dt( u.confirmed, 'date' ) ) %] </em> </li> [% "</ul>" IF loop.last %] @@ -69,9 +69,9 @@ END %] <li><a href="[% c.uri_for( '/report', p.id ) %]">[% p.title | html %]</a> <em class="council_sent_info"> – [% IF p.whensent %] - [% tprintf( loc("Reported %s, to %s"), prettify_dt( p.confirmed_local, 'date' ), p.body(c) ) %] + [% tprintf( loc("Reported %s, to %s"), prettify_dt( p.confirmed, 'date' ), p.body(c) ) %] [% ELSE %] - [% tprintf( loc("Reported %s"), prettify_dt( p.confirmed_local, 'date' ) ) %] + [% tprintf( loc("Reported %s"), prettify_dt( p.confirmed, 'date' ) ) %] [% END %] </em> </li> diff --git a/templates/web/default/pagination.html b/templates/web/default/pagination.html index f5a1192d1..63180b600 100644 --- a/templates/web/default/pagination.html +++ b/templates/web/default/pagination.html @@ -1,17 +1,19 @@ [% IF pager.last_page > 1 %] - <p> +[% IF NOT admin %] +<section class="full-width"> +[% END %] + <p class="pagination"> [% IF pager.previous_page %] - <a href="[% c.req.uri_with({ $param => pager.previous_page }) %]">← Previous</a> - [% ELSE %] - ← Previous + <a class="prev" href="[% c.req.uri_with({ $param => pager.previous_page }) %][% '#' _ hash IF hash %]">[% loc('Previous') %]</a> [% END %] - | - [% pager.first %] to [% pager.last %] of [% pager.total_entries %] - | + + [% tprintf( loc('%d to %d of %d'), pager.first, pager.last, pager.total_entries ) %] + [% IF pager.next_page %] - <a href="[% c.req.uri_with({ $param => pager.next_page }) %]">Next →</a> - [% ELSE %] - Next → + <a class="next" href="[% c.req.uri_with({ $param => pager.next_page }) %][% '#' _ hash IF hash %]">[% loc('Next') %]</a> [% END %] </p> +[% IF NOT admin %] +</section> +[% END %] [% END %] diff --git a/templates/web/default/report/_support.html b/templates/web/default/report/_support.html index f4bdb8c20..3e372ba69 100644 --- a/templates/web/default/report/_support.html +++ b/templates/web/default/report/_support.html @@ -1,11 +1,17 @@ [% IF c.cobrand.can_support_problems %] -<p id="supporter"><small> - [% IF !problem.interest_count %][% text=loc('No supporters') %][% ELSIF problem.interest_count == 1 %][% text = loc('1 supporter') %][% ELSE %][% text = tprintf( loc('%d supporters' ), problem.interest_count ) %][% END %] - [% IF c.user && c.user.from_body %]<form action="[% c.uri_for( '/report/support' ) %]"> - [% text %] <input type="hidden" name="id" value="[% problem.id %]"><input type="submit" class="green-btn" value="Add support"> +[% + IF !problem.interest_count; + SET text = loc('No supporters'); + ELSE; + SET text = tprintf( nget( "%d supporter", "%d supporters", problem.interest_count ), problem.interest_count ); + END; +%] + + [% IF c.user AND c.user.from_body %] + <form action="[% c.uri_for( '/report/support' ) %]"> + <p id="supporter"><small>[% text %] <input type="hidden" name="id" value="[% problem.id %]"><input type="submit" class="green-btn" value="Add support"></small></p> </form> [% ELSE %] - [% text %] + <p id="supporter"><small>[% text %]</small></p> [% END %] -</small></p> [% END %] diff --git a/templates/web/default/report/banner.html b/templates/web/default/report/banner.html index 52bfa6e67..bd7798d79 100644 --- a/templates/web/default/report/banner.html +++ b/templates/web/default/report/banner.html @@ -5,7 +5,7 @@ </p> [% END %] -[% IF problem.is_open AND date.now - problem.lastupdate_local.epoch > 8 * 7 * 24 * 60 * 60 %] +[% IF problem.is_open AND date.now - problem.lastupdate.epoch > 8 * 7 * 24 * 60 * 60 %] [% INCLUDE banner, id = 'unknown', text = loc('This problem is old and of unknown status.') %] [% END %] [% IF problem.is_fixed %] diff --git a/templates/web/default/report/display.html b/templates/web/default/report/display.html index 2ade45a8a..fd7580ac1 100644 --- a/templates/web/default/report/display.html +++ b/templates/web/default/report/display.html @@ -1,7 +1,7 @@ [% PROCESS "maps/${map.type}.html"; - problem_title = problem.title _ ' - ' _ loc('Viewing a problem'); + problem_title = problem.title_safe _ ' - ' _ loc('Viewing a problem'); SET rss = [ loc('Updates to this problem, FixMyStreet'), "/rss/$problem.id" ] IF c.cobrand.moniker != 'emptyhomes'; SET robots = 'index, nofollow'; SET robots = 'noindex, nofollow' IF c.cobrand.moniker == 'emptyhomes'; diff --git a/templates/web/default/report/updates.html b/templates/web/default/report/updates.html index b7adb014f..83f746d56 100644 --- a/templates/web/default/report/updates.html +++ b/templates/web/default/report/updates.html @@ -7,21 +7,21 @@ [% IF update.whenanswered %] [%# A questionnaire update, currently saying report is still open %] - [% tprintf( loc( 'Still open, via questionnaire, %s' ), prettify_dt( update.whenanswered_local ) ) %] + [% tprintf( loc( 'Still open, via questionnaire, %s' ), prettify_dt( update.whenanswered ) ) %] [% RETURN %] [% END %] [% IF update.anonymous || update.name == '' %] - [% tprintf( loc( 'Posted anonymously at %s' ), prettify_dt( update.confirmed_local ) ) -%] + [% tprintf( loc( 'Posted anonymously at %s' ), prettify_dt( update.confirmed ) ) -%] [%- ELSIF update.user.from_body; user_name = update.user.name | html; body = update.user.body; IF body == 'Bromley Council'; body = "$body <img src='/cobrands/bromley/favicon.png' alt=''>"; END %] - [% tprintf( loc( 'Posted by %s (<strong>%s</strong>) at %s' ), user_name, body, prettify_dt( update.confirmed_local ) ) -%] + [% tprintf( loc( 'Posted by %s (<strong>%s</strong>) at %s' ), user_name, body, prettify_dt( update.confirmed ) ) -%] [%- ELSE %] - [% tprintf( loc( 'Posted by %s at %s' ), update.name, prettify_dt( update.confirmed_local ) ) | html -%] + [% tprintf( loc( 'Posted by %s at %s' ), update.name, prettify_dt( update.confirmed ) ) | html -%] [%- END -%] [%- update_state = '' %] [%- IF update.mark_fixed %][% update_state = ", " _ loc( 'marked as fixed' ) %][% END %] diff --git a/templates/web/emptyhomes/around/extra_text.html b/templates/web/emptyhomes/around/extra_text.html new file mode 100644 index 000000000..bb9d18d8e --- /dev/null +++ b/templates/web/emptyhomes/around/extra_text.html @@ -0,0 +1,9 @@ +[% +# Need to ignore any county council +FOR c IN all_areas.values; + SET council = c IF c.type != 'CTY'; +END; +%] +<a href="/local/[% c.cobrand.short_name(council) | lower %]"> + Find out local news and stats for [% council.name %] +</a> diff --git a/templates/web/emptyhomes/front/stats.html b/templates/web/emptyhomes/front/stats.html new file mode 100644 index 000000000..f6aacf859 --- /dev/null +++ b/templates/web/emptyhomes/front/stats.html @@ -0,0 +1,7 @@ +[% USE Comma %] +[% stats = c.cobrand.front_stats_data %] + +<div id="front_stats"> + <div>[% tprintf( loc("<big>%s</big> reports"), stats ) | comma %]</div> + <div><a href="/local/">[% loc('Find latest local and national news') %]</a></div> +</div> diff --git a/templates/web/fixmybarangay/alert/index.html b/templates/web/fixmybarangay/alert/index.html index d9bb74ee9..8e2ce7518 100644 --- a/templates/web/fixmybarangay/alert/index.html +++ b/templates/web/fixmybarangay/alert/index.html @@ -30,9 +30,11 @@ FixMyBarangay has a RSS feeds and email alerts for local problems. <div class="sticky-sidebar" id="alert_recent"> <aside> <h2>[% loc('Some photos of recent reports') %]</h2> - [% FOREACH p IN photos %] + [% FOREACH p IN photos; + photo = p.get_photo_params + %] <a href="/report/[% p.id %]"><img border="0" height="100" - src="/photo/[% p.id %].tn.jpeg" alt="[% p.title | html %]" title="[% p.title | html %]"></a> + src="[% photo.url_tn %]" alt="[% p.title | html %]" title="[% p.title | html %]"></a> [% END %] </aside> </div> diff --git a/templates/web/fixmystreet/contact/index.html b/templates/web/fixmystreet/contact/index.html index 450b6e2ef..f6648ab37 100644 --- a/templates/web/fixmystreet/contact/index.html +++ b/templates/web/fixmystreet/contact/index.html @@ -19,9 +19,9 @@ <blockquote> <p> [% IF update.anonymous %] - [% tprintf( loc('Update below added anonymously at %s'), prettify_dt( update.confirmed_local ) ) %] + [% tprintf( loc('Update below added anonymously at %s'), prettify_dt( update.confirmed ) ) %] [% ELSE %] - [% tprintf( loc('Update below added by %s at %s'), update.name, prettify_dt( update.confirmed_local ) ) | html %] + [% tprintf( loc('Update below added by %s at %s'), update.name, prettify_dt( update.confirmed ) ) | html %] [% END %] </p> @@ -39,13 +39,13 @@ </p> <blockquote> - <h2>[% problem.title | html %]</h2> + <h2>[% problem.title_safe | html %]</h2> <p> [% IF problem.anonymous %] - [% tprintf( loc('Reported anonymously at %s'), prettify_dt( problem.confirmed_local ) ) %] + [% tprintf( loc('Reported anonymously at %s'), prettify_dt( problem.confirmed ) ) %] [% ELSE %] - [% tprintf( loc('Reported by %s at %s'), problem.user.name, prettify_dt( problem.confirmed_local ) ) | html %] + [% tprintf( loc('Reported by %s at %s'), problem.user.name, prettify_dt( problem.confirmed ) ) | html %] [% END %] </p> diff --git a/templates/web/fixmystreet/index.html b/templates/web/fixmystreet/index.html index 5d7d31baa..f45509891 100644 --- a/templates/web/fixmystreet/index.html +++ b/templates/web/fixmystreet/index.html @@ -47,8 +47,7 @@ kinds of problems like missed bins use our <section class="full-width"> <ul class="issue-list-a"> [% FOREACH problem IN recent_photos %] - [% problem.photo = 1; # Definitely is - INCLUDE 'report/_item.html', no_fixed = 1 %] + [% INCLUDE 'report/_item.html', no_fixed = 1 %] [% END %] </ul> </section> diff --git a/templates/web/fixmystreet/my/my.html b/templates/web/fixmystreet/my/my.html index 3134c335f..12f68bd80 100644 --- a/templates/web/fixmystreet/my/my.html +++ b/templates/web/fixmystreet/my/my.html @@ -57,7 +57,7 @@ END %] <li>“[% u.text | html %]” – <a href="[% c.uri_for( '/report', u.problem_id ) %]#update_[% u.id %]">[% u.problem.title | html %]</a>. <p><small class="council_sent_info"> - [% tprintf( loc("Added %s"), prettify_dt( u.confirmed_local, 'date' ) ) %] + [% tprintf( loc("Added %s"), prettify_dt( u.confirmed, 'date' ) ) %] </small></p> </li> [% "</ul>" IF loop.last %] diff --git a/templates/web/fixmystreet/pagination.html b/templates/web/fixmystreet/pagination.html deleted file mode 100644 index 4f4d00a79..000000000 --- a/templates/web/fixmystreet/pagination.html +++ /dev/null @@ -1,15 +0,0 @@ -[% IF pager.last_page > 1 %] -<section class="full-width"> - <p class="pagination"> - [% IF pager.previous_page %] - <a class="prev" href="[% c.req.uri_with({ $param => pager.previous_page }) %]">Previous</a> - [% END %] - - [% pager.first %] to [% pager.last %] of [% pager.total_entries %] - - [% IF pager.next_page %] - <a class="next" href="[% c.req.uri_with({ $param => pager.next_page }) %]">Next</a> - [% END %] - </p> -</section> -[% END %] diff --git a/templates/web/fixmystreet/report/_item.html b/templates/web/fixmystreet/report/_item.html index 508b02614..852633f76 100644 --- a/templates/web/fixmystreet/report/_item.html +++ b/templates/web/fixmystreet/report/_item.html @@ -1,13 +1,15 @@ <li> <a class="text" href="[% c.uri_for('/report', problem.id ) %]"> - [% IF problem.photo %] - <img class="img" height="60" width="90" src="/photo/[% problem.id %].fp.jpeg" alt=""> + [% IF problem.photo; + photo = problem.get_photo_params + %] + <img class="img" height="60" width="90" src="[% photo.url_fp %]" alt=""> [% END %] <h4>[% problem.title | html %]</h4> - <small>[% prettify_dt( problem.confirmed_local, 1 ) %] + <small>[% prettify_dt( problem.confirmed, 1 ) %] [%- IF dist %], [% dist %]km[% END %] [%- IF include_lastupdate AND problem.confirmed != problem.lastupdate AND problem.whensent != problem.lastupdate %], - [% tprintf('last updated %s', prettify_dt( problem.lastupdate_local, 1 ) ) %] + [% tprintf(loc('last updated %s'), prettify_dt( problem.lastupdate, 1 ) ) %] [%- END %] [% IF include_lastupdate %] [% IF problem.bodies_str_ids.size > 1 %] [% loc('(sent to both)') %] diff --git a/templates/web/fixmystreet/report/banner.html b/templates/web/fixmystreet/report/banner.html index ce4666a6a..83c780958 100644 --- a/templates/web/fixmystreet/report/banner.html +++ b/templates/web/fixmystreet/report/banner.html @@ -5,7 +5,7 @@ </div> [% END %] -[% IF c.cobrand.moniker != 'bromley' AND problem.bodies_str != '2482' AND problem.is_open AND date.now - problem.lastupdate_local.epoch > 8 * 7 * 24 * 60 * 60 %] +[% IF c.cobrand.moniker != 'bromley' AND problem.bodies_str != '2482' AND problem.is_open AND date.now - problem.lastupdate.epoch > 8 * 7 * 24 * 60 * 60 %] [% INCLUDE banner, id = 'unknown', text = loc('Unknown') %] [% END %] [% IF problem.is_fixed %] diff --git a/templates/web/fixmystreet/report/display.html b/templates/web/fixmystreet/report/display.html index 44838c0ab..b75ef92bc 100644 --- a/templates/web/fixmystreet/report/display.html +++ b/templates/web/fixmystreet/report/display.html @@ -2,7 +2,7 @@ PROCESS "report/photo-js.html"; PROCESS "maps/${map.type}.html"; - problem_title = problem.title _ ' - ' _ loc('Viewing a problem'); + problem_title = problem.title_safe _ ' - ' _ loc('Viewing a problem'); INCLUDE 'header.html' title = problem_title rss = [ loc('Updates to this problem, FixMyStreet'), "/rss/$problem.id" ] @@ -49,7 +49,7 @@ [% IF c.cobrand.moniker == 'fixmystreet' %] <div id="report-share" class="hidden-js" align="center"> - <a href="https://twitter.com/share" class="twitter-share-button" data-text="I just reported ‘[% problem.title | html %]’" data-via="fixmystreet" data-related="mysociety" data-count="none" data-dnt="true">Tweet</a> + <a href="https://twitter.com/share" class="twitter-share-button" data-text="I just reported ‘[% problem.title_safe | html %]’" data-via="fixmystreet" data-related="mysociety" data-count="none" data-dnt="true">Tweet</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script> <iframe src="//www.facebook.com/plugins/like.php?href=[% c.req.uri | uri %]&send=false&layout=button_count&width=90&show_faces=false&action=like&colorscheme=light&font&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:90px; height:21px;" allowTransparency="true"></iframe> </div> diff --git a/templates/web/oxfordshire/around/intro.html b/templates/web/oxfordshire/around/intro.html index 81b2569f6..3b96ec82f 100644 --- a/templates/web/oxfordshire/around/intro.html +++ b/templates/web/oxfordshire/around/intro.html @@ -1 +1 @@ - <h1 class="main">Reporting a problem in Oxfordshire</h1> + <h1 class="main">Report a street or road problem</h1> diff --git a/templates/web/oxfordshire/faq/faq-en-gb.html b/templates/web/oxfordshire/faq/faq-en-gb.html index 5aafa0bc4..a85c8b96b 100755 --- a/templates/web/oxfordshire/faq/faq-en-gb.html +++ b/templates/web/oxfordshire/faq/faq-en-gb.html @@ -25,6 +25,10 @@ to make it easier for our customers to report highways faults directly to us by using their computer or mobile phone. </p> + <p> + Here is a <a href="http://vimeo.com/61275718">short video</a> + about FixMyStreet and how you can use it to report road and street problems. + </p> </dd> <dt>What sort of problems should I report with FixMyStreet?</dt> @@ -107,6 +111,32 @@ The map shows all faults submitted online through FixMyStreet. You can view the exact location of each fault and see its current status. </dd> + + <dt>What updates will I receive?</dt> + <dd> + <p> + When you record a fault you can sign up to receive updates and you will receive an + initial email to acknowledge the report. + </p> + <p> + You will then receive an email every time that fault is updated. This could be when + a member of the public posts an update onto the fault or when we post a status update. + </p> + <p> + Road problems that are the responsibility of our Highways department, such as potholes, + will receive automatic updates at different stages. You will receive an email when the + problem has been inspected and another one when the fault is fixed. + </p> + <p> + Some faults may be marked as referred when they are not the responsibility of Oxfordshire + County Council, for example problems such as graffiti or rubbish which are the + responsibility of the District Council for that area. + </p> + <p> + All of these updates will also be posted on the mapped fault so that anyone can see the + status of any fault recorded via FixMyStreet by clicking on it on the map. + </p> + </dd> <dt>How can I get an update on a fault?</dt> <dd> @@ -148,12 +178,12 @@ <h2><a name="practical"></a>Practical Questions</h2> <dl> - <dt>Do you remove silly or illegal content?</dt> + <dt>Inappropriate use</dt> <dd> Oxfordshire County Council and FixMyStreet are not responsible for the content and - accuracy of material submitted by its users. We reserve the right to edit or remove - any problems or updates which we consider to be inappropriate upon being informed - by a user of the site. + accuracy of material submitted by its users. Oxfordshire County Council will monitor + this website for instances of inappropriate use, and reserves the right to moderate + comments if such instances occur. </dd> <dt>Why does the site use kilometres for measurements?</dt> diff --git a/templates/web/oxfordshire/header.html b/templates/web/oxfordshire/header.html index e9a592fd4..67afb2334 100644 --- a/templates/web/oxfordshire/header.html +++ b/templates/web/oxfordshire/header.html @@ -37,10 +37,10 @@ <div id="oxford-header" class="desk-only oxford-left"> <a href="http://www.oxfordshire.gov.uk/" title="Home" class="logo">Oxfordshire County Council<span></span></a> <span id="oxford-links"> - <a href="http://www.oxfordshire.gov.uk/" title="">Oxfordshire County Council home</a>|<a href="/" title="">FixMyStreet</a> + <a href="http://www.oxfordshire.gov.uk/" title="">Oxfordshire County Council home</a> </span> <div style="clear:both"></div> - <span class="header"><a href="/">FixMyStreet</a></span> + <span class="header"><a href="/">Report a road or street problem</a></span> <div class="oxford-user"> <p> [% IF c.user_exists %] diff --git a/templates/web/oxfordshire/tracking_code.html b/templates/web/oxfordshire/tracking_code.html new file mode 100644 index 000000000..1ed17651b --- /dev/null +++ b/templates/web/oxfordshire/tracking_code.html @@ -0,0 +1,22 @@ +[% IF c.config.BASE_URL == "http://www.fixmystreet.com" %] + +<script type="text/javascript"> + + var _gaq = _gaq || []; + _gaq.push(['_setAccount', 'UA-22094787-2']); + _gaq.push(['_setDomainName', '.oxfordshire.gov.uk']); + _gaq.push(['_setCustomVar',1,'level1','Roads and transport',3]); + _gaq.push(['_setCustomVar',2,'level2','FixMyStreet',3]); + _gaq.push(['_trackPageview']); + jQuery(document).ready( function () { + jQuery.occ.gaico({ + messageIcon: '/cms/sites/all/themes/publicsite/images/gaico_exclamation.png', + permanentMessageIcon: '/cms/sites/all/themes/publicsite/images/gaico_question.png' + }); + }); + +</script> + +[% ELSE %] +<!-- Tracking code not inserted as "[% c.config.BASE_URL %]" not "http://www.fixmystreet.com" --> +[% END %] diff --git a/templates/web/zurich/admin/header.html b/templates/web/zurich/admin/header.html index 41cb520f5..be146f0e1 100644 --- a/templates/web/zurich/admin/header.html +++ b/templates/web/zurich/admin/header.html @@ -14,9 +14,20 @@ %] <style type="text/css"> .adminhidden { color: #666666; } + .active { background-color: #ffffee; cursor: pointer; } .error { color: red; } .overdue { background-color: #ffcccc; } select { width: auto; } + #fms_pan_zoom { top: 13em !important; } </style> +<script> +$(function(){ + $('.row-link').hover(function(){ + $(this).toggleClass("active"); + }).click(function(){ + window.location = this.getElementsByTagName('a')[0]; + }).find('td:last').hide(); + $('th.edit').hide(); +}); +</script> - <h1 style="clear:both;">[% title %]</h1> diff --git a/templates/web/zurich/admin/index-dm.html b/templates/web/zurich/admin/index-dm.html index a88100ee4..530e72c59 100644 --- a/templates/web/zurich/admin/index-dm.html +++ b/templates/web/zurich/admin/index-dm.html @@ -3,14 +3,15 @@ [% status_message %] -<h2>[% loc('Submitted') %]</h2> -[% INCLUDE list, problems = unconfirmed.all %] +<h2 id="submitted">[% loc('Submitted') %]</h2> +[% INCLUDE list, problems = unconfirmed.all, hash = 'submitted' %] -<h2>[% loc('Planned') %]</h2> -[% INCLUDE list, problems = approval.all %] +<h2 id="planned">[% loc('Planned') %]</h2> +[% INCLUDE list, problems = approval.all, hash = 'planned' %] -<h2>[% loc('All reports') %]</h2> -[% INCLUDE list, problems = other.all, include_subdiv = 1 %] +<h2 id="alle">[% loc('All reports') %]</h2> +[% INCLUDE list, problems = other.all, include_subdiv = 1, hash = 'alle' %] +[% INCLUDE 'pagination.html', admin = 1, param = 'p', hash = 'alle' %] [% INCLUDE 'admin/footer.html' %] @@ -19,14 +20,13 @@ <tr> <th>[% loc('ID') %]</th> <th>[% loc('Description') %]</th> - <th>[% loc('Category') %]</th> - <th>[% loc('Submitted') %]</th> - <th>[% loc('Updated') %]</th> - <th>[% loc('Status') %]</th> + [% FOREACH col IN [ [ 'category', loc('Category') ], [ 'created', loc('Submitted') ], [ 'lastupdate', loc('Updated') ], [ 'state', loc('Status') ] ] %] + <th><a href="[% INCLUDE sort_link choice = col.0 %]#[% hash %]">[% col.1 %] [% INCLUDE sort_arrow choice = col.0 %]</a></th> + [% END %] [% IF include_subdiv %] <th>[% loc('Subdivision/Body') %]</th> [% END %] - <th>*</th> + <th class='edit'>*</th> </tr> <tr class="filter-row"> <td colspan="8"><input type="text" placeholder="[%= loc('Filter report list') %]" /></td> diff --git a/templates/web/zurich/admin/index-sdm.html b/templates/web/zurich/admin/index-sdm.html index 4e4009c16..76593ead0 100644 --- a/templates/web/zurich/admin/index-sdm.html +++ b/templates/web/zurich/admin/index-sdm.html @@ -1,14 +1,15 @@ [% PROCESS 'admin/header.html' title=loc('Summary') -%] [% PROCESS 'admin/report_blocks.html' %] -<h2>[% loc('New reports') %]</h2> -[% INCLUDE list, problems = reports_new.all %] +<h2 id="new">[% loc('New reports') %]</h2> +[% INCLUDE list, problems = reports_new.all, hash = 'new' %] -<h2>[% loc('Reports awaiting approval') %]</h2> -[% INCLUDE list, problems = reports_unpublished.all, no_edit = 1 %] +<h2 id="wait">[% loc('Reports awaiting approval') %]</h2> +[% INCLUDE list, problems = reports_unpublished.all, no_edit = 1, hash = 'wait' %] -<h2>[% loc('Reports published') %]</h2> -[% INCLUDE list, problems = reports_published.all, no_edit = 1 %] +<h2 id="alle">[% loc('Reports published') %]</h2> +[% INCLUDE list, problems = reports_published.all, no_edit = 1, hash = 'alle' %] +[% INCLUDE 'pagination.html', admin = 1, param = 'p', hash = 'alle' %] [% INCLUDE 'admin/footer.html' %] @@ -17,12 +18,11 @@ <tr> <th>[% loc('ID') %]</th> <th>[% loc('Description') %]</th> - <th>[% loc('Category') %]</th> - <th>[% loc('Submitted') %]</th> - <th>[% loc('Updated') %]</th> - <th>[% loc('Status') %]</th> + [% FOREACH col IN [ [ 'category', loc('Category') ], [ 'created', loc('Submitted') ], [ 'lastupdate', loc('Updated') ], [ 'state', loc('Status') ] ] %] + <th><a href="[% INCLUDE sort_link choice = col.0 %]#[% hash %]">[% col.1 %] [% INCLUDE sort_arrow choice = col.0 %]</a></th> + [% END %] [% IF NOT no_edit %] - <th>*</th> + <th class='edit'>*</th> [% END %] </tr> <tr class="filter-row"> diff --git a/templates/web/zurich/admin/index.html b/templates/web/zurich/admin/index.html index ab835b5a3..a51c7f6fe 100644 --- a/templates/web/zurich/admin/index.html +++ b/templates/web/zurich/admin/index.html @@ -6,12 +6,6 @@ <li>[% tprintf( loc('%d council contacts – %d confirmed, %d unconfirmed'), contacts.total, contacts.1, contacts.0) %]</li> </ul> -[% IF c.cobrand.admin_show_creation_graph -%] - <p> - <a href="[% c.config.BASE_URL %]/fms-live-creation.png">[% loc('Graph of problem creation by status over time') %]</a> - </p> -[% END -%] - <h2>[% loc('Problem breakdown by state') %]</h2> <ul> [% FOREACH state IN problems.keys.sort %] diff --git a/templates/web/zurich/admin/list_updates.html b/templates/web/zurich/admin/list_updates.html index 7a78d4c63..c475d839e 100644 --- a/templates/web/zurich/admin/list_updates.html +++ b/templates/web/zurich/admin/list_updates.html @@ -1,3 +1,4 @@ +[% IF updates.size %] <h2>[% loc('Updates') %]</h2> <table cellspacing="0" cellpadding="2" border="1"> @@ -14,3 +15,4 @@ </tr> [% END -%] </table> +[% END %] diff --git a/templates/web/zurich/admin/problem_row.html b/templates/web/zurich/admin/problem_row.html index 617490232..8b1a30cb0 100644 --- a/templates/web/zurich/admin/problem_row.html +++ b/templates/web/zurich/admin/problem_row.html @@ -1,18 +1,19 @@ [%- FOR problem IN problems %] [% SET p_body = problem.bodies.values.0 %] - [% IF page == 'search' %] - [% NEXT IF admin_type == 'sdm' AND p_body.id != body.id %] - [% NEXT IF admin_type == 'dm' AND p_body.id != body.id AND p_body.parent.id != body.id %] - [% END %] <tr[% - ' class="adminhidden"' IF problem.state == 'hidden'; - ' class="overdue"' IF c.cobrand.overdue( problem ); + SET classes = []; + classes.push('adminhidden') IF problem.state == 'hidden'; + classes.push('overdue') IF c.cobrand.overdue( problem ); + classes.push('row-link') IF NOT no_edit; + ' class="' _ classes.join(' ') _ '"' IF classes.size; %]> - <td class="record-id">[%- IF problem.is_visible -%] - <a href="[% c.uri_for_email( '/report', problem.id ) %]">[% problem.id %]</a> - [%- ELSE %] - [%- problem.id %] - [%- END -%]</td> + <td class="record-id"> + [% IF no_edit AND problem.is_visible %] + <a href="[% c.uri_for_email( '/report', problem.id ) %]">[% problem.id %]</a> + [% ELSE %] + [% problem.id %] + [% END %] + </td> <td>[% PROCESS value_or_nbsp value=problem.title %]</td> <td>[% PROCESS value_or_nbsp value=problem.category %]</td> <td>[% PROCESS format_date this_date=problem.created %]</td> diff --git a/templates/web/zurich/admin/report_edit-sdm.html b/templates/web/zurich/admin/report_edit-sdm.html index faad3ec55..85fa0a067 100644 --- a/templates/web/zurich/admin/report_edit-sdm.html +++ b/templates/web/zurich/admin/report_edit-sdm.html @@ -1,5 +1,16 @@ -[% PROCESS 'admin/header.html' title=tprintf(loc('Editing problem %d'), problem.id ) -%] -[% PROCESS 'admin/report_blocks.html' %] +[% + PROCESS "maps/zurich.html"; + PROCESS 'admin/header.html' + title = tprintf(loc('Editing problem %d'), problem.id ), + bodyclass = 'mappage'; + PROCESS 'admin/report_blocks.html' +-%] + +[% map_html %] + <p id='sub_map_links'> + <a class="hidden-nojs" id="map_layer_toggle" href="">Stadtplan</a> + </p> +</div> [% status_message %] @@ -9,9 +20,9 @@ <p align="right"><input type="submit" name="send_back" value="[% loc('Not for my subdivision') %]"></p> -<ul> +<ul class="no-bullets"> <li><a href="[% c.uri_for_email( '/report', problem.id ) %]">[% loc('View report on site' )%]</a></li> -<li>[% loc('Details:') %] [% problem.detail | html %] +<li><span class="mock-label">[% loc('Details:') %]</span> [% problem.detail | html %] [% IF problem.extra.original_detail %] <br>[% SET safe = problem.extra.original_detail | html; @@ -19,26 +30,28 @@ %] [% END %] </li> -<li>[% loc('Co-ordinates:') %] [% problem.local_coords.join(',') %] +<li><span class="mock-label">[% loc('Co-ordinates:') %]</span> [% problem.local_coords.join(',') %] + <input type="hidden" name="latitude" id="fixmystreet.latitude" value="[% problem.latitude %]"> + <input type="hidden" name="longitude" id="fixmystreet.longitude" value="[% problem.longitude %]"> ([% SET safe = problem.postcode | html; tprintf( loc('originally entered: “%s”'), safe ) %], [% IF problem.used_map %][% loc('used map') %][% ELSE %][% loc("didn't use map") %][% END %])</li> -<li>[% loc('Category:') %] [% problem.category | html %] </li> -<li>[% loc('Name:') %] [% problem.name | html %] -<li>[% loc('Email:') %] [% problem.user.email | html %] +<li><span class="mock-label">[% loc('Category:') %]</span> [% problem.category | html %] </li> +<li><span class="mock-label">[% loc('Name:') %]</span> [% problem.name | html %] +<li><span class="mock-label">[% loc('Email:') %]</span> [% problem.user.email | html %] [% IF NOT problem.extra.email_confirmed %]<span class="error">[% loc('Unconfirmed') %]</span>[% END %] -<li>[% loc('Phone:') %] [% IF problem.user.phone %][% problem.user.phone | html %][% ELSE %]<em>[% loc('None') %]</em>[% END %]</li> -<li>[% loc('Created:') %] [% PROCESS format_date this_date=problem.created %] [% problem.created.hms %]</li> +<li><span class="mock-label">[% loc('Phone:') %]</span> [% IF problem.user.phone %][% problem.user.phone | html %][% ELSE %]<em>[% loc('None') %]</em>[% END %]</li> +<li><span class="mock-label">[% loc('Created:') %]</span> [% PROCESS format_date this_date=problem.created %] [% problem.created.hms %]</li> [% IF problem.photo %] [% photo = problem.get_photo_params %] <li><img alt="" src="[% c.cobrand.base_url %][% photo.url %]"></li> [% END %] -<li>[% loc('State:') %] [% states.${problem.state} %]</li> +<li><span class="mock-label">[% loc('State:') %]</span> [% states.${problem.state} %]</li> <li><label for="internal_notes">[% loc('Internal notes:') %]</label> <textarea name='internal_notes' id='internal_notes' cols=60 rows=5>[% problem.extra.internal_notes | html %]</textarea></li> @@ -48,8 +61,10 @@ </ul> -<p><input type="submit" name="Submit changes" value="[% loc('Submit changes') %]" ></p> -<p align="right"><input type="submit" name="no_more_updates" value="[% loc('No further updates') %]"></p> +<p class="cf"> + <input style="float:left" type="submit" name="Submit changes" value="[% loc('Submit changes') %]" > + <input style="float:right" type="submit" name="no_more_updates" value="[% loc('No further updates') %]"> +</p> </form> [% INCLUDE 'admin/list_updates.html' %] diff --git a/templates/web/zurich/admin/report_edit.html b/templates/web/zurich/admin/report_edit.html index 7fdaeabff..b604a7ea0 100644 --- a/templates/web/zurich/admin/report_edit.html +++ b/templates/web/zurich/admin/report_edit.html @@ -7,6 +7,9 @@ -%] [% map_html %] + <p id='sub_map_links'> + <a class="hidden-nojs" id="map_layer_toggle" href="">Stadtplan</a> + </p> </div> [% status_message %] @@ -15,11 +18,11 @@ <input type="hidden" name="token" value="[% token %]" > <input type="hidden" name="submit" value="1" > -<ul> +<ul class="no-bullets"> <li><a href="[% c.uri_for_email( '/report', problem.id ) %]">[% loc('View report on site' )%]</a></li> [% IF problem.state == 'fixed - council' OR problem.state == 'closed' %] - <li>[% loc('Details:') %] [% problem.detail | html %] + <li><span class="mock-label">[% loc('Details:') %]</span> [% problem.detail | html %] [% IF problem.extra.original_detail %] <br>[% SET detail_safe = problem.extra.original_detail | html; @@ -40,26 +43,28 @@ </li> [% END %] -<li>[% loc('Co-ordinates:') %] [% problem.local_coords.join(',') %] +<li><span class="mock-label">[% loc('Co-ordinates:') %]</span> [% problem.local_coords.join(',') %] + <input type="hidden" name="latitude" id="fixmystreet.latitude" value="[% problem.latitude %]"> + <input type="hidden" name="longitude" id="fixmystreet.longitude" value="[% problem.longitude %]"> + ([% SET safe = problem.postcode | html; tprintf( loc('originally entered: “%s”'), safe ) %], [% IF problem.used_map %][% loc('used map') %][% ELSE %][% loc("didn't use map") %][% END %])</li> -<li>[% loc('Name:') %] [% problem.name | html %] <input type='hidden' name='name' id='name' value='[% problem.name | html %]'></li> -<li>[% loc('Email:') %] [% problem.user.email | html %] <input type='hidden' id='email' name='email' value='[% problem.user.email | html %]'> +<li><span class="mock-label">[% loc('Name:') %]</span> [% problem.name | html %] <input type='hidden' name='name' id='name' value='[% problem.name | html %]'></li> +<li><span class="mock-label">[% loc('Email:') %]</span> [% problem.user.email | html %] <input type='hidden' id='email' name='email' value='[% problem.user.email | html %]'> [% IF NOT problem.extra.email_confirmed %]<span class="error">[% loc('Unconfirmed') %]</span>[% END %] </li> -<li>[% loc('Phone:') %] [% IF problem.user.phone %][% problem.user.phone | html %][% ELSE %]<em>[% loc('None') %]</em>[% END %]</li> -<li>[% loc('Created:') %] [% PROCESS format_date this_date=problem.created %] [% problem.created.hms %]</li> +<li><span class="mock-label">[% loc('Phone:') %]</span> [% IF problem.user.phone %][% problem.user.phone | html %][% ELSE %]<em>[% loc('None') %]</em>[% END %]</li> +<li><span class="mock-label">[% loc('Created:') %]</span> [% PROCESS format_date this_date=problem.created %] [% problem.created.hms %]</li> [% IF problem.photo %] [% photo = problem.get_photo_params %] <li><img alt="" src="[% c.cobrand.base_url %][% photo.url %]"> <br> -[% IF rotated %]Photo may be cached for a while.<br>[% END %] <input type="submit" name="rotate_photo" value="[% loc('Rotate Left') %]"> <input type="submit" name="rotate_photo" value="[% loc('Rotate Right') %]"> <br> @@ -71,7 +76,7 @@ <p><label for="internal_notes">[% loc('Internal notes:') %]</label> <textarea name='internal_notes' id='internal_notes' cols=60 rows=5>[% problem.extra.internal_notes | html %]</textarea></p> -<p>[% loc('State:') %] <select name="state" id="state"> +<p><span class="mock-label">[% loc('State:') %]</span> <select name="state" id="state"> <option value="">--</option> [% FOREACH s IN [ ['unconfirmed', loc('Submitted')] @@ -92,16 +97,20 @@ [% IF problem.state == 'unconfirmed' OR problem.state == 'confirmed' %] -<ul> -<li class="assignation"> -<label for="body_subdivision">[% loc('Assign to subdivision:') %]</label> +<ul class="no-bullets"> +[% list = FOR body IN bodies %] + [%- NEXT UNLESS body.parent.id == c.user.from_body.id %] + <option value="[% body.id %]"[% IF body.id == problem.bodies_str %] selected[% END %]>[% body.name %]</option> +[% END %] + [% IF admin_type != 'super' AND list %] + <li class="assignation"> + <label for="body_subdivision">[% loc('Assign to subdivision:') %]</label> <select name="body_subdivision" id="body_subdivision"> <option value="">--</option> - [% FOR body IN bodies %] - [% NEXT UNLESS body.parent.id == c.user.from_body.id %] - <option value="[% body.id %]"[% IF body.id == problem.bodies_str %] selected[% END %]>[% body.name %]</option> - [% END %] + [% list %] </select> + </li> + [% END %] <li class="assignation"> <label for="category"> @@ -145,24 +154,41 @@ $(function(){ [% ELSIF problem.state == 'planned' %] -<ul> +<ul class="no-bullets"> +[% list = FOR body IN bodies %] + [%- NEXT UNLESS body.parent.id == c.user.from_body.id %] + <option value="[% body.id %]">[% body.name %]</option> +[% END %] + [% IF admin_type != 'super' AND list %] <li class="assignation"> <label for="body_subdivision">[% loc('Assign to subdivision:') %]</label> <select name="body_subdivision" id="body_subdivision"> <option value="" selected>--</option> - [% FOR body IN bodies %] - [% NEXT UNLESS body.parent.id == c.user.from_body.id %] - <option value="[% body.id %]">[% body.name %]</option> - [% END %] + [% list %] </select> </li> + [% END %] <li><label for="status_update">[% loc('Public response:') %]</label> - <textarea name='status_update' id='status_update' cols=60 rows=5>[% problem.extra.public_response | html %]</textarea> + <textarea name='status_update' id='status_update' cols=60 rows=5> + [%- IF problem.extra.public_response -%] + [%- problem.extra.public_response | html -%] + [%- ELSE -%] + +Freundliche Grüsse + +Ihre Stadt Zürich + [%- END %]</textarea> </li> </ul> +[% ELSIF problem.state == 'fixed - council' %] + +<p><span class="mock-label">[% loc('Public response:') %]</span> +[% problem.extra.public_response | html %] +</p> + [% END %] <p align="right"> diff --git a/templates/web/zurich/admin/reports.html b/templates/web/zurich/admin/reports.html index f8c022630..b0bc733c4 100644 --- a/templates/web/zurich/admin/reports.html +++ b/templates/web/zurich/admin/reports.html @@ -5,23 +5,23 @@ <p><label for="search">[% loc('Search:') %]</label> <input type="text" name="search" size="30" id="search" value="[% searched | html %]"> </form> - -[% IF searched %] +[% IF problems.size %] <table cellspacing="0" cellpadding="2" border="1"> <tr> <th>[% loc('ID') %]</th> <th>[% loc('Description') %]</th> - <th>[% loc('Category') %]</th> - <th>[% loc('Submitted') %]</th> - <th>[% loc('Updated') %]</th> - <th>[% loc('Status') %]</th> - <th>*</th> + [% FOREACH col IN [ [ 'category', loc('Category') ], [ 'created', loc('Submitted') ], [ 'lastupdate', loc('Updated') ], [ 'state', loc('Status') ] ] %] + <th><a href="[% INCLUDE sort_link choice = col.0 %]">[% col.1 %] [% INCLUDE sort_arrow choice = col.0 %]</a></th> + [% END %] + <th class='edit'>*</th> </tr> - [% INCLUDE 'admin/problem_row.html', page = 'search' %] + [% INCLUDE 'admin/problem_row.html' %] </table> -[% INCLUDE 'admin/list_updates.html' %] +[% INCLUDE 'pagination.html', admin = 1, param = 'p' IF pager %] [% END %] +[% INCLUDE 'admin/list_updates.html' %] + [% INCLUDE 'admin/footer.html' %] diff --git a/templates/web/zurich/admin/stats.html b/templates/web/zurich/admin/stats.html new file mode 100644 index 000000000..92521ff1d --- /dev/null +++ b/templates/web/zurich/admin/stats.html @@ -0,0 +1,54 @@ +[% INCLUDE 'admin/header.html' title=loc('Stats') %] +[% PROCESS 'admin/report_blocks.html' %] +[% USE date %] + +<p style="float:right"><a href="[% c.uri_with( { export=1 } ) %]">[% loc('All Reports') %]</a></p> + +[% IF start_date AND end_date %] +<p><strong>[% tprintf( loc( 'All reports between %s and %s' ), start_date.ymd, end_date.ymd ) | html %]</strong></p> +[% END %] + +<form method="get" action="[% c.uri_for('stats') %]"> +<p><select name="ym"> + <option value="">[% loc('All reports') %]</option> + [% FOR y IN [ 2013 .. date.format(date.now, '%Y') ]; + SET max = 12; + max = date.format(date.now, '%m') IF y == date.format(date.now, '%Y'); + FOR m IN [ 1 .. max ]; + m = m | format('%02d'); + SET v = m _ '.' _ y; + %] + <option[% ' selected' IF v == ym %]>[% v %]</option> + [% END %] + [% END %] +</select> + +<input type="submit" value="[% loc('Go') %]"> +</form> + +<ul> +<li>[% loc('Total') %]: [% reports_total || 0 %] +<li>[% loc('Closed') %]: [% reports_solved || 0 %] +<li>[% loc('Hidden') %]: [% reports_spam || 0 %] +<li>Externe Adressen: [% reports_assigned || 0 %] +<li>[% loc('Moderated by division within one working day') %]: [% reports_moderated || 0 %] +<li>[% loc('Dealt with by subdivision within 5 working days') %]: [% reports_dealtwith || 0 %] +<li>[% loc('Assign to different category:') %] [% reports_category_changed || 0 %] +<li>[% loc('Photo') %]: [% pictures_taken || 0 %] +<li>[% loc('Publish photo') %]: [% pictures_published || 0 %] +<!-- <li>[% loc('Phone:') %] [% users_phone || 0 %] --> +<li>[% loc('Confirmed') %]: [% email_confirmed || 0 %] +<li>[% loc('Name:') %] [% name_provided || 0 %] +</ul> + +<table> +<tr><th>[% loc('Service:') %]</th><th>[% loc('Count') %]</th></tr> +[% WHILE ( s = per_service.next ) %]<tr><td>[% s.service || 'Web' %]</td><td>[% s.get_column('c') %]</td></tr>[% END %] +</table> + +<table> +<tr><th>[% loc('Category') %]</th><th>[% loc('Count') %]</th></tr> +[% WHILE ( c = per_category.next ) %]<tr><td>[% c.category %]</td><td>[% c.get_column('c') %]</td></tr>[% END %] +</table> + +[% INCLUDE 'admin/footer.html' %] diff --git a/templates/web/zurich/around/intro.html b/templates/web/zurich/around/intro.html index f7a4904e3..b60fa7388 100644 --- a/templates/web/zurich/around/intro.html +++ b/templates/web/zurich/around/intro.html @@ -5,11 +5,6 @@ $(function() { $( "#pc" ).autocomplete({ minLength: 3, - select: function(event, ui) { - $(this).val(ui.item.value); - this.form.submit(); - return true; - }, source: "/ajax/geocode" }); }); diff --git a/templates/web/zurich/auth/general.html b/templates/web/zurich/auth/general.html new file mode 100644 index 000000000..7f6403d00 --- /dev/null +++ b/templates/web/zurich/auth/general.html @@ -0,0 +1,71 @@ +[% INCLUDE 'header.html', title = loc('Sign in or create an account') %] + +[% IF email_error; + + # other keys include fqdn, mxcheck if you'd like to write a custom error message + + errors = { + missing => loc('Please enter your email'), + other => loc('Please check your email address is correct') + }; + + loc_email_error = errors.$email_error || errors.other; +END %] + +<form action="[% c.uri_for() %]" method="post" name="general_auth_login" class="validate"> + <fieldset> + + <h1>[% loc('Sign in') %]</h1> + + <input type="hidden" name="r" value="[% c.req.params.r | html %]"> + + <div id="form_sign_in_yes" class="form-box"> + + <label class="n" for="email">[% loc('Email') %]</label> + [% IF loc_email_error %] + <div class="form-error">[% loc_email_error %]</div> + [% ELSIF sign_in_error %] + <div class="form-error">[% loc('There was a problem with your email/password combination. If you cannot remember your password, or do not have one, please fill in the ‘sign in by email’ section of the form.') %]</div> + [% END %] + <input type="email" class="required email" id="email" name="email" value="[% email | html %]" placeholder="[% loc('Your email address') %]"> + + <label for="password_sign_in">[% loc('Password (optional)') %]</label> + <div class="form-txt-submit-box"> + <input type="password" class="required" name="password_sign_in" id="password_sign_in" value="" placeholder="[% loc('Your password') %]"> + <input class="green-btn" type="submit" name="sign_in" value="[% loc('Sign in') %]"> + </div> + + <input type="checkbox" id="remember_me" name="remember_me" value='1'[% ' checked' IF remember_me %]> + <label class="inline n" for="remember_me">[% loc('Keep me signed in on this computer') %]</label> + + </div> + </fieldset> +</form> + +<form action="[% c.uri_for() %]" method="post" name="general_auth_register" class="validate"> + <fieldset> + <input type="hidden" name="r" value="[% c.req.params.r | html %]"> + + <h1>[% loc('<strong>No</strong> let me sign in by email') %]</h1> + <div id="form_sign_in_no" class="form-box"> + + <label class="n" for="email2">[% loc('Email') %]</label> + [% IF loc_email_error %] + <div class="form-error">[% loc_email_error %]</div> + [% END %] + <input type="email" class="required email" id="email2" name="email" value="[% email | html %]" placeholder="[% loc('Your email address') %]"> + + <label for="name">[% loc('Name') %]</label> + <input type="text" class="required" name="name" value="" placeholder="[% loc('Your name') %]"> + + <label for="password_register">[% loc('Password (optional)') %]</label> + <div class="form-txt-submit-box"> + <input type="password" class="required" name="password_register" id="password_register" value="" placeholder="[% loc('Enter a password') %]"> + <input class="green-btn" type="submit" name="email_sign_in" value="Registrieren"> + </div> + + </div> + </fieldset> +</form> + +[% INCLUDE 'footer.html' %] diff --git a/templates/web/zurich/faq/faq-de-ch.html b/templates/web/zurich/faq/faq-de-ch.html index a354810df..f15196f8d 100755..100644 --- a/templates/web/zurich/faq/faq-de-ch.html +++ b/templates/web/zurich/faq/faq-de-ch.html @@ -1,190 +1,85 @@ -[% INCLUDE 'header.html', title => loc('Frequently Asked Questions'), bodyclass => 'twothirdswidthpage' %] +[% INCLUDE 'header.html', title => loc('Help'), bodyclass => 'fullwidthpage' %] -<div class="sticky-sidebar"> - <aside> - <ul class="plain-list"> - <li><a href="#faq">Frequently Asked Questions</a></li> - <li><a href="#practical">Practical Questions</a></li> - <li><a href="#organisation">Organisation Questions</a></li> - <li><a href="/privacy">Privacy and cookies</a></li> - </ul> - </aside> -</div> +<h1><a name="faq"></a>Hilfe</h1> -<h1><a name="faq"></a>Frequently Asked Questions</h1> <dl> - <dt>What is FixMyStreet?</dt> - <dd>FixMyStreet is a site to help people report, view, -or discuss local problems they’ve found to their local council by -simply locating them on a map. It launched in early February -2007.</dd> - <dt>What sort of problems should I report with FixMyStreet?</dt> - <dd>FixMyStreet is primarily for reporting things which are -<strong>broken or dirty or damaged or dumped, and need fixing, cleaning -or clearing</strong>, such as: - <ul><li>Abandoned vehicles - <li>Dog Fouling - <li>Flyposting or graffiti - <li>Flytipping or litter - <li>Streetcleaning, such as broken glass in a cycle lane - <li>Unlit lampposts - <li>Potholes - </ul> - </dd> +<dt>Was ist «Züri wie neu»</dt> +<dd> +«Züri wie neu» ist eine Online-Plattform, über die die Einwohnerinnen und +Einwohner der Stadt Zürich auf Mängel und Schäden der städtischen Infrastruktur +hinweisen können. «Züri wie neu» wird von der Stadtverwaltung moderiert und +transparent geführt. Die Meldungen werden innerhalb von einem Arbeitstag den zuständigen Fachstellen +zugewiesen und innert fünf Arbeitstagen abschliessend beantwortet. Fällt eine +Meldung nicht in den Zuständigkeitsbereich der Stadtverwaltung, wird die +Meldung anonymisiert der zuständigen dritten Stelle per E-Mail zugestellt. +</dd> - <dt>What isn’t FixMyStreet for?</dt> - <dd>FixMyStreet is not a way of getting in touch with [% c.cobrand.is_council ? 'the' : 'your' %] council for all - issues – please use FixMyStreet only for problems such as the above. We - often route problem reports via cleansing services or highways and so using - FixMyStreet for other matters may result in a delay in your report getting - to the right department. <strong>You will need to contact [% c.cobrand.is_council ? 'the' : 'your' %] council - directly for problems such as</strong>: +<dt>Welche Probleme kann ich über «Züri wie neu» melden?</dt> +<dd> +<p>Gemeldet werden können sämtliche Schäden an der Infrastruktur der Stadt Zürich. +Dabei kann es sich um ein Loch im Strassenbelag, ein Graffiti am Stadthaus oder +eine durch Vandalen beschädigte Parkbank handeln. - <ul><li>Anti-social behaviour - <li>Any urgent or emergency problems - <li>Noise pollution or barking dogs - <li>Fires and smoke/smell pollution - <li>Missing wheelie bins or recycling boxes or missed rubbish collections - <li>Proposals for speed bumps/ CCTV/ pedestrian crossings/ new road layouts/ etc. - <li>Complaining about your neighbours - <li>Complaining about the council - <li>Joy riding, drug taking, animal cruelty, or other criminal activity - </ul> - <p>Councils often have direct hotlines for these sorts of issues.</p> - </dd> +<p>Es können Probleme zu folgenden Kategorien gemeldet werden: - <dt>How do I use the site?</dt> - <dd>After entering a postcode or location, you are presented -with a map of that area. You can view problems already reported in that area, -or report ones of your own simply by clicking on the map at the location of -the problem.</dd> - <dt>How are the problems solved?</dt> - <dd>They are reported to the [% IF !c.cobrand.is_council %]relevant[% END %] council by email. The -council can then resolve the problem the way they normally would. -Alternatively, you can discuss the problem on the website with others, and -then together lobby the council to fix it, or fix it directly yourselves.</dd> - <dt>Is it free?</dt> - <dd>The site is free to use, yes. FixMyStreet is run -by a registered charity, though, so if you want to make a contribution, <a -href="https://secure.mysociety.org/donate/">please do</a>.</dd> +<ul> +<li>Abfall / Sammelstellen</li> +<li>Beleuchtung</li> +<li>Graffiti</li> +<li>Spielplatz / Sitzbank</li> +<li>Strasse / Trottoir / Platz</li> +<li>Tiere / Grünflächen</li> +</ul> - <dt>Can I use FixMyStreet on my mobile?</dt> - <dd> - <p>The FixMyStreet website should work on your mobile phone, adapting to - the size of your screen automatically. We plan to release updated native - apps in the near future. - <ul> - <li><em>iPhone:</em> Our basic app from 2008 is available for download - on the App Store: - <a href="http://itunes.apple.com/gb/app/fixmystreet/id297456545">FixMyStreet</a>, - <li><em>Android:</em> A volunteer, Anna Powell-Smith, has written an app - available from the - <a href="https://market.android.com/details?id=com.android.fixmystreet">Android Market</a>. - <li><em>Nokia:</em> A volunteer, Thomas Forth, has written an app available from the - <a href="http://store.ovi.com/content/107557">Ovi Store</a>. - </ul> - </dd> +</dd> - </dl> +<dt>Was kann ich nicht über «Züri wie neu» melden?</dt> +<dd> +<ul> +<li>Mängel die nicht auf Stadtgebiet liegen.</li> +<li>Melden Sie «Züri wie neu» KEINE Notfälle. Die Notrufnummern lauten: + <br>Medizinisch - 144 Polizei - 117 Feuer - 118 Allgemein - 112</li> +<li>Allgemeine Verschönerungs- und Verbesserungsvorschläge</li> +</ul> +</dd> - <h2><a name="practical"></a>Practical Questions</h2> - <dl> - <dt>I’m from a council, where do you send the reports?</dt> - <dd>You can either leave a test report or <a href="/contact">contact us</a> -to find out where reports go at the moment. Also <a href="/contact">contact us</a> -to update the address or addresses we use.</dd> - <dt>I’m from a council, can we have FixMyStreet on our website?</dt> - <dd>Yes you can! We offer branded, hosted versions of FixMyStreet for local council websites. <a href="http://www.mysociety.org/for-councils/fixmystreet/">Full details</a>.</dd> - <dt>Do you remove silly or illegal content?</dt> - <dd>FixMyStreet is not responsible for the content and accuracy -of material submitted by its users. We reserve the right to edit or remove any -problems or updates which we consider to be inappropriate upon being informed -by a user of the site.</dd> - <dt>Why does the site use kilometres for measurements?</dt> - <dd>Thanks for asking politely – we never quite understand why some of the rudest - emails we receive are on this topic. The British national - grid reference system, devised by Ordnance Survey (the British national - mapping agency) around the time of the second world war, uses eastings and - northings measured in metres and kilometres; the maps we use are from - Ordnance Survey and so this is what we use to display distances. - There you have it: not everything British is in miles!</dd> +<dt>Wie verwende ich die Webseite?</dt> +<dd> +<p> +Geben Sie zuerst eine Adresse an oder lassen Sie Ihren Standort automatisch +über den entsprechenden Link lokalisieren. Mittels Mausklick in die danach +angezeigte Karte können Sie den exakten Ort des Mangels angeben. Als letzten +Schritt füllen Sie die Felder des Formulars aus und schicken die Meldung ab. +</p> +<p> +Weiter können Sie bestehende Meldungen sowie auch die Rückmeldungen der +Verwaltung betrachten. +</p> +</dd> - <dt>Why can’t I zoom out more on the reporting map?</dt> - <dd>We want to keep FixMyStreet locally focused, so restrict the ability to - move radically between areas. The map on Your Reports will let you see all - the reports you’ve made, wherever they are. If you’re from the - council then the emailed version of the problem report also contains the - closest road and postcode to the pin on the map.</dd> +<dt>Wie werden die Probleme gelöst?</dt> +<dd> +Die Meldungen werden innerhalb von einem Arbeitstag den zuständigen Fachstellen +zugewiesen und innert fünf Arbeitstagen von den dafür zuständigen +Fachstellen bearbeitet sowie mit einer entsprechenden Rückmeldung versehen. +</dd> - <dt>This site is great – why aren’t you better publicised?</dt> - <dd>As a tiny charity we simply don’t have a publicity budget, and we - rely on word of mouth to advertise the site. We have a whole <a - href="posters/">array of posters, flyers and badges</a> if you’d like - to publicise us on the web or in your local area, and why not write to your - local paper to let them know about us?</dd> </dl> - - <h2><a name="organisation"></a>Organisation Questions</h2> - <dl> - <dt>Who built FixMyStreet?</dt> - <dd>This site was built by <a href="http://www.mysociety.org/">mySociety</a>, - in conjunction with the <a href="http://www.youngfoundation.org.uk/">Young Foundation</a>. -mySociety is the project of a registered charity which has grown out of the community of -volunteers who built sites like <a href="http://www.theyworkforyou.com/">TheyWorkForYou.com</a>. -mySociety’s primary mission is to build Internet projects which give people simple, tangible -benefits in the civic and community aspects of their lives. Our first project -was <a href="http://www.writetothem.com/">WriteToThem</a>, where you can write to any of your -elected representatives, for free. The charity is called UK Citizens Online Democracy and is charity number 1076346. mySociety -can be contacted by email at <a href="mailto:hello@mysociety.org">hello@mysociety.org</a>, -or by post at mySociety, 483 Green Lanes, London, N13 4BS, UK.</dd> - <dt><img src="/i/moj.png" align="right" alt="Ministry of Justice" hspace="10">Who pays for it?</dt> - <dd>FixMyStreet was originally paid for via the Department for - Constitutional Affairs Innovations Fund. It is now funded by a variety of means, from commercial - work to <a href="http://www.mysociety.org/donate/">donations</a>.</dd> - <dt><a name="nfi"></a>Wasn’t this site called Neighbourhood Fix-It?</dt> - <dd>Yes, we changed the name mid June 2007. We decided -Neighbourhood Fix-It was a bit of a mouthful, hard to spell, and hard to publicise (does the URL have a dash in it or not?). The domain FixMyStreet became available, and everyone liked the name.</dd> - <dt>Do you need any help with the project?</dt> - <dd>Yes, we can use help in all sorts of ways, technical or -non-technical. Please see our <a -href="http://www.mysociety.org/helpus/">Get Involved page</a>.</dd> - <dt>I’d like a site like this for my own location/ where’s the "source code" to this site?</dt> - <dd> -The software behind this site is open source, and available -to you mainly under the GNU Affero GPL software license. You can <a -href="http://github.com/mysociety/fixmystreet">download the -source code</a> and help us develop it. -You’re welcome to use it in your own projects, although you must also -make available the source code to any such projects. -<a href="http://www.fiksgatami.no/">Fiksgatami</a> is an example of our code -being used in a Norwegian version of this site. +<dt>Kann ich «Züri wie neu» auf meinem Smartphone nutzen?</dt> +<dd> +Ja, sowohl über die für mobile Geräte optimierte Webseite, als auch über die +iOS- und Android-App. </dd> -<dt>I’d prefer code in a different language?</dt> + +<dt>Kann ich auch Probleme ausserhalb von Zürich melden?</dt> +<dd>Nein.</dd> + +<dt>Werden meine E-Mail-Adresse, mein Name und meine Telefonnummer vertraulich behandelt?</dt> <dd> -VisibleGovernment.ca wrote their own code for -<a href="http://www.fixmystreet.ca/">http://www.fixmystreet.ca/</a>, which is -written in GeoDjango and available under an MIT licence at <a -href="http://github.com/visiblegovernment/django-fixmystreet/tree/master">github</a>. -Or <a href="http://www.fixmystreet.org.nz/">FixMyStreet.org.nz</a> is written in -Drupal. -</p> +Die Kontaktinformationen werden nur stadtintern für Rückfragen verwendet. Sie +werden weder im Internet publiziert noch an Dritte weitergegeben. </dd> - <dt>People build things, not organisations. Who <em>actually</em> built it?</dt> - <dd>Matthew Somerville and Francis Irving wrote the site, -Chris Lightfoot wrote the tileserver and map cutter, Richard Pope created -our pins, Deborah Kerr keeps things up-to-date and does user support, -Ayesha Garrett designed our posters, and Tom Steinberg managed it all. -Thanks also to -<a href="http://www.ordnancesurvey.co.uk">Ordnance Survey</a> (for the maps, -UK postcodes, and UK addresses – data © Crown copyright, all -rights reserved, Ministry of Justice 100037819 2008), -Yahoo! for their BSD-licensed JavaScript libraries, the entire free software -community (this particular project was brought to you by Perl, PostgreSQL, -and the number 161.290) and <a -href="http://www.bytemark.co.uk/">Bytemark</a> (who kindly host all -our servers). +</dl> -Let us know if we’ve missed anyone.</dd> - </dl> [% INCLUDE 'footer.html' pagefooter = 'yes' %] diff --git a/templates/web/zurich/footer.html b/templates/web/zurich/footer.html index a570a66a3..2304c048e 100644 --- a/templates/web/zurich/footer.html +++ b/templates/web/zurich/footer.html @@ -9,18 +9,17 @@ [% IF c.user_exists %] <p> [% tprintf(loc('Hi %s'), c.user.name || c.user.email) %] - </p><p><a href="/auth/sign_out">[% loc('sign out') %]</a> + </p><p><a href="/admin">[% loc('Summary') %]</a> | <a href="/auth/sign_out">[% loc('sign out') %]</a> </p> - [% ELSE %] + [% END %] <ul id="main-menu" class="mob-only"> - <li><[% IF c.req.uri.path == '/' %]span[% ELSE %]a href="/"[% END %] - >[% loc("Report a problem") %]</[% c.req.uri.path == '/' ? 'span' : 'a' %]></li>[% + <li><[% IF c.req.uri.path == '/' %]a onclick="$('html, body').animate({scrollTop:0}, 500); return false;" href="#site-header"[% ELSE %]a href="/"[% END %] + >[% loc("Report a problem") %]</[% c.req.uri.path == '/' ? 'a' : 'a' %]></li>[% %]<li><[% IF c.req.uri.path == '/reports' %]span[% ELSE %]a href="/reports"[% END %]>[% loc("All reports") %]</[% c.req.uri.path == '/reports' ? 'span' : 'a' %]></li>[% %]<li><[% IF c.req.uri.path == '/faq' %]span[% ELSE %]a href="/faq"[% END %]>[% loc("Help") %]</[% c.req.uri.path == '/faq' ? 'span' : 'a' %]></li> </ul> - [% END %] </div> </div> </div> @@ -29,11 +28,12 @@ <!-- [% INCLUDE 'debug_footer.html' %] --> </div> <!-- .wrapper --> - <div id="zurich-footer" class="desk-only"> - © 2012 Stadt Zürich + <div id="zurich-footer-wrapper" class="desk-only"> + <div id="zurich-footer"> + © 2013 Stadt Zürich <span class="hidden">|</span> <a href="http://www.stadt-zuerich.ch/content/portal/de/index/footer/rechtliche_hinweise.html">Rechtliche Hinweise</a> <span class="hidden">|</span> <a href="http://www.stadt-zuerich.ch/content/portal/de/index/footer/impressum.html">Impressum</a> - <span class="hidden">|</span> <a href="http://www.stadt-zuerich.ch/content/portal/de/index/footer/barrierefreiheit.html">Barrierefreiheit</a> + </div> </div> </body> diff --git a/templates/web/zurich/header.html b/templates/web/zurich/header.html index 8c8e49775..891c6f1d3 100644 --- a/templates/web/zurich/header.html +++ b/templates/web/zurich/header.html @@ -20,14 +20,14 @@ <link rel="stylesheet" href="[% start %][% version('/cobrands/' _ c.cobrand.moniker _ '/layout.css') %]"> <![endif]--> -<!-- CDN for now FIXME --><link rel="stylesheet" href="http://code.jquery.com/ui/1.9.2/themes/redmond/jquery-ui.css"> + <link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/themes/redmond/jquery-ui.css"> <script src="[% start %][% version('/js/modernizr.custom.js') %]" charset="utf-8"></script> <script src="[% start %][% version('/cobrands/fixmystreet/position_map.js') %]" charset="utf-8"></script> - [% INCLUDE 'common_header_tags.html', js_override = '/cobrands/fixmystreet/fixmystreet.js', site_title = 'FixMyZurich' %] + [% INCLUDE 'common_header_tags.html', js_override = '/cobrands/fixmystreet/fixmystreet.js', site_title = 'Züri wie neu' %] [% extra_js %] -<!-- CDN for now FIXME --><script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js" charset="utf-8"></script> + <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js" charset="utf-8"></script> [% INCLUDE 'tracking_code.html' %] @@ -38,7 +38,8 @@ <div class="table-cell"> <header id="site-header" role="banner"> <div class="container"> - <a href="http://www.stadt-zuerich.ch/" id="site-logo">FixMyZurich</a> + <a href="/" id="site-logo-text">Züri wie neu</a> + <a href="http://www.stadt-zuerich.ch/" id="site-logo">Stadt Zürich</a> <a href="#main-nav" id="nav-link">Main Navigation</a> </div> </header> @@ -67,6 +68,9 @@ <li [% IF pagename == 'users' OR pagename == 'user_edit' %]class="current"[% END %]> <a href="/admin/users">[% loc('Users') %]</a> </li> + <li [% IF pagename == 'stats' %]class="current"[% END %]> + <a href="/admin/stats">[% loc('Stats') %]</a> + </li> [% END %] <li class="search-box"> <form method="get" action="[% c.uri_for('reports') %]" enctype="application/x-www-form-urlencoded" accept-charset="utf-8"> diff --git a/templates/web/zurich/report/_item.html b/templates/web/zurich/report/_item.html index 41164cdd1..7adb7cdd4 100644 --- a/templates/web/zurich/report/_item.html +++ b/templates/web/zurich/report/_item.html @@ -1,17 +1,19 @@ <li> <a class="text" href="[% c.uri_for('/report', problem.id ) %]"> - [% IF problem.state != 'unconfirmed' AND problem.photo AND problem.extra.publish_photo %] - <img class="img" height="60" width="90" src="/photo/[% problem.id %].fp.jpeg" alt=""> + [% IF problem.state != 'unconfirmed' AND problem.photo AND problem.extra.publish_photo; + photo = problem.get_photo_params + %] + <img class="img" height="60" width="90" src="[% photo.url_fp %]" alt=""> [% END %] [% IF problem.state != 'unconfirmed' %] <h4>[% problem.title | html %]</h4> [% ELSE %] <h4><em>[% loc('Awaiting moderation') %]</em></h4> [% END %] - <small>[% prettify_dt( problem.created_local, 'zurich' ) %] + <small>[% prettify_dt( problem.created, 'zurich' ) %] [%- IF dist %], [% dist %]km[% END %] [%- IF include_lastupdate AND problem.created != problem.lastupdate AND problem.whensent != problem.lastupdate %], - [% tprintf('last updated %s', prettify_dt( problem.lastupdate_local, 'zurich' ) ) %] + [% tprintf(loc('last updated %s'), prettify_dt( problem.lastupdate, 'zurich' ) ) %] [%- END %] [% IF NOT no_fixed AND problem.is_fixed %] [% loc('(fixed)') %] diff --git a/templates/web/zurich/report/_main.html b/templates/web/zurich/report/_main.html index e6c310873..c5fbabf1c 100644 --- a/templates/web/zurich/report/_main.html +++ b/templates/web/zurich/report/_main.html @@ -1,7 +1,7 @@ <div class="problem-header cf"> <h1>[% tprintf( loc('Reported in the %s category'), problem.category ) %]</h1> <p class="sub"> - [% prettify_dt( problem.created_local, 'zurich' ) %] + [% prettify_dt( problem.created, 'zurich' ) %] [%- IF !problem.used_map %]<br>[% loc('there is no pin shown as the user did not use the map') %][% END %] </p> diff --git a/templates/web/zurich/report/updates.html b/templates/web/zurich/report/updates.html index 69c8af99f..786ecd582 100644 --- a/templates/web/zurich/report/updates.html +++ b/templates/web/zurich/report/updates.html @@ -4,7 +4,7 @@ <li> <div class="update-wrap"> <div class="update-text"> - <p class="meta-2">[% prettify_dt( problem.lastupdate_local, 'zurich' ) %]</p> + <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 %] diff --git a/templates/web/zurich/tracking_code.html b/templates/web/zurich/tracking_code.html new file mode 100644 index 000000000..bffd0fd6f --- /dev/null +++ b/templates/web/zurich/tracking_code.html @@ -0,0 +1,18 @@ +[% + SET ga_code = 'UA-38427437-1'; + SET ga_code = 'UA-39223200-1' IF c.config.BASE_URL == "https://www.zueriwieneu.ch"; +%] +<script type="text/javascript"> + + var _gaq = _gaq || []; + _gaq.push(['_setAccount', '[% ga_code %]']); + _gaq.push (['_gat._anonymizeIp']); + _gaq.push(['_trackPageview']); + + (function() { + var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); + })(); + +</script> |