aboutsummaryrefslogtreecommitdiffstats
path: root/templates/web/default
diff options
context:
space:
mode:
Diffstat (limited to 'templates/web/default')
-rw-r--r--templates/web/default/admin/header.html1
-rw-r--r--templates/web/default/admin/list_flagged.html51
-rw-r--r--templates/web/default/admin/problem_row.html30
-rw-r--r--templates/web/default/admin/report_blocks.html10
-rw-r--r--templates/web/default/admin/report_edit.html3
-rw-r--r--templates/web/default/admin/search_abuse.html21
-rw-r--r--templates/web/default/admin/search_reports.html31
-rw-r--r--templates/web/default/admin/stats.html61
-rw-r--r--templates/web/default/admin/update_edit.html1
-rw-r--r--templates/web/default/alert/choose.html2
-rw-r--r--templates/web/default/around/around_index.html2
-rwxr-xr-xtemplates/web/default/around/display_location.html35
-rwxr-xr-xtemplates/web/default/faq/faq-en-gb.html14
-rw-r--r--templates/web/default/footer.html23
-rw-r--r--templates/web/default/header.html10
-rw-r--r--templates/web/default/maps/fms.html3
-rw-r--r--templates/web/default/maps/openlayers.html2
-rw-r--r--templates/web/default/maps/osm-streetview.html2
-rw-r--r--templates/web/default/maps/osm.html2
-rw-r--r--templates/web/default/open311/index.html147
-rw-r--r--templates/web/default/report/new/category.html10
-rw-r--r--templates/web/default/report/new/councils_text.html9
-rw-r--r--templates/web/default/report/new/councils_text_all.html (renamed from templates/web/default/report/new/all_councils_text.html)0
-rw-r--r--templates/web/default/report/new/councils_text_none.html (renamed from templates/web/default/report/new/no_councils_text.html)0
-rw-r--r--templates/web/default/report/new/councils_text_some.html (renamed from templates/web/default/report/new/some_councils_text.html)0
-rw-r--r--templates/web/default/report/new/fill_in_details.html203
-rw-r--r--templates/web/default/report/new/fill_in_details_form.html211
-rw-r--r--templates/web/default/report/new/fill_in_details_text.html2
-rwxr-xr-xtemplates/web/default/reports/council.html2
-rw-r--r--templates/web/default/tracking_code.html24
30 files changed, 627 insertions, 285 deletions
diff --git a/templates/web/default/admin/header.html b/templates/web/default/admin/header.html
index 261f0efb2..e0317cca0 100644
--- a/templates/web/default/admin/header.html
+++ b/templates/web/default/admin/header.html
@@ -5,6 +5,7 @@
dt { clear: left; float: left; font-weight: bold; }
dd { margin-left: 8em; }
.hidden { color: #666666; }
+.error { color: red; }
</style>
</head>
<body>
diff --git a/templates/web/default/admin/list_flagged.html b/templates/web/default/admin/list_flagged.html
new file mode 100644
index 000000000..0b22bccb2
--- /dev/null
+++ b/templates/web/default/admin/list_flagged.html
@@ -0,0 +1,51 @@
+[% INCLUDE 'admin/header.html' title=loc('Search Reports') %]
+[% PROCESS 'admin/report_blocks.html' %]
+
+
+<h2>[% loc( 'Problems' ) %]</h2>
+[% IF problems.size > 0 %]
+<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('Council') %]</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>
+[% ELSE %]
+<p>
+[% loc('No flagged problems found') %]
+</p>
+[% END %]
+
+<h2>[% loc( 'Users' ) %]</h2>
+[% IF users%]
+<table cellspacing="0" cellpadding="2" border="1">
+ <tr>
+ <th>[% loc('Name') %]</th>
+ <th>[% loc('Email') %]</th>
+ </tr>
+[% WHILE ( user = users.next ) -%]
+ <tr>
+ <td>[% user.name | html %]</td>
+ <td>[% user.email | html %]</td>
+ <td><a href="[% c.uri_for( 'search_reports', search => user.email ) %]">list content</a></td>
+ </tr>
+[%- END %]
+</table>
+[%- ELSE %]
+<p>
+[% loc('No flagged users found') %]
+</p>
+[%- END %]
+
+[% INCLUDE 'admin/footer.html' %]
diff --git a/templates/web/default/admin/problem_row.html b/templates/web/default/admin/problem_row.html
new file mode 100644
index 000000000..664ff1b13
--- /dev/null
+++ b/templates/web/default/admin/problem_row.html
@@ -0,0 +1,30 @@
+[%- FOR problem IN problems %]
+ <tr[% ' class="hidden"' IF problem.state == 'hidden' %]>
+ <td>[%- IF problem.state == 'confirmed' || problem.state == 'fixed' -%]
+ [%- 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>
+ [%- ELSE %]
+ [%- 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_council_contacts -%]
+ <a href="[% c.uri_for('council_contacts', problem.council ) %]">[% PROCESS value_or_nbsp value=problem.council %]</a>
+ [%- ELSE -%]
+ [%- PROCESS value_or_nbsp value=problem.council -%]
+ [%- 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.state == 'fixed' || problem.state == 'confirmed' %]<br>[% loc('Confirmed:' ) %]&nbsp;[% PROCESS format_time time=problem.confirmed %][% END -%]
+ [%- IF problem.state == 'fixed' %]<br>[% loc('Fixed:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%]
+ [%- IF problem.state == 'confirmed' %]<br>[% loc('Last&nbsp;update:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%]</small>
+ </td>
+ <td>[% PROCESS format_time time=problem.whensent %]</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 1fe650f15..f08529ce7 100644
--- a/templates/web/default/admin/report_blocks.html
+++ b/templates/web/default/admin/report_blocks.html
@@ -5,3 +5,13 @@
[% BLOCK format_time -%]
[%- IF time %][% time.ymd %]&nbsp;[% time.hms %][% ELSE %][% no_time || '&nbsp;' %][% END %][% no_time = '' %]
[%- END %]
+
+[% BLOCK abuse_button -%]
+[% IF allowed_pages.abuse_edit -%]
+[% IF email_in_abuse %]<small>[% loc('(Email in abuse table)') %]</small>[% ELSE %]<input type="submit" name="banuser" value="[% loc('Ban email address') %]" />[% END %]
+[%- END %]
+[%- END %]
+
+[% BLOCK flag_button -%]
+[% IF user.flagged || user_flagged %]<input type="submit" name="removeuserflag" value="[% loc('Remove flag') %]">[% ELSE %]<input type="submit" name="flaguser" value="[% loc('Flag user') %]" />[% END %]
+[%- END %]
diff --git a/templates/web/default/admin/report_edit.html b/templates/web/default/admin/report_edit.html
index 551f80127..470ad311a 100644
--- a/templates/web/default/admin/report_edit.html
+++ b/templates/web/default/admin/report_edit.html
@@ -28,7 +28,7 @@
</select></li>
<li>[% loc('Category:') %] [% problem.category | html %] </li>
<li>[% loc('Name:') %] <input type='text' name='name' id='name' value='[% problem.name | html %]'></li>
-<li>[% loc('Email:') %] <input type='text' id='email' name='email' value='[% problem.user.email | html %]'></li>
+<li>[% loc('Email:') %] <input type='text' id='email' name='email' value='[% problem.user.email | html %]'> [% PROCESS abuse_button %] [% PROCESS flag_button user=problem.user %]</li>
<li>[% loc('Phone:') %] [% problem.user.phone | html %]</li>
<li>[% loc('Created:') %] [% PROCESS format_time time=problem.created %]</li>
<li>[% loc('Confirmed:') %] [% PROCESS format_time time=problem.confirmed no_time='-' %]</li>
@@ -38,6 +38,7 @@
<li>[% loc('Cobrand:') %] [% problem.cobrand %]</li>
<li>[% loc('Cobrand data:') %] [% problem.cobrand_data %]</li>
<li>[% loc('Going to send questionnaire?') %] [% IF problem.send_questionnaire %][% loc('Yes') %][% ELSE %][% loc('No') %][% END %]</li>
+<li><label for="flagged">[% loc('Flagged:') %]</label> <input type="checkbox" name="flagged"[% ' checked' IF problem.flagged %]></li>
[% IF problem.photo %]
[% photo = problem.get_photo_params %]
diff --git a/templates/web/default/admin/search_abuse.html b/templates/web/default/admin/search_abuse.html
new file mode 100644
index 000000000..0984e85cf
--- /dev/null
+++ b/templates/web/default/admin/search_abuse.html
@@ -0,0 +1,21 @@
+[% INCLUDE 'admin/header.html' title=loc('Search Abuse Table') %]
+
+<form method="get" action="[% c.uri_for('search_abuse') %]" enctype="application/x-www-form-urlencoded" accept-charset="utf-8">
+ <label for="search">[% loc('Search:') %]</label> <input type="text" name="search" size="30" id="search">
+</form>
+
+
+[% IF emails.size > 0 %]
+<table cellspacing="0" cellpadding="2" border="1">
+ <tr>
+ <th>[% loc('Email') %]</th>
+ </tr>
+[%- FOREACH foo IN emails %]
+ <tr>
+ <td>[%- foo.email | html -%]</td>
+ </tr>
+[%- END -%]
+</table>
+[% END %]
+
+[% INCLUDE 'admin/footer.html' %]
diff --git a/templates/web/default/admin/search_reports.html b/templates/web/default/admin/search_reports.html
index 3809965f6..9702c16a7 100644
--- a/templates/web/default/admin/search_reports.html
+++ b/templates/web/default/admin/search_reports.html
@@ -22,36 +22,7 @@
<th>[% loc('When sent') %]</th>
<th>*</th>
</tr>
-[%- FOREACH problem IN problems %]
- <tr[% ' class="hidden"' IF problem.state == 'hidden' %]>
- <td>[%- IF problem.state == 'confirmed' || problem.state == 'fixed' -%]
- [%- 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>
- [%- ELSE %]
- [%- 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_council_contacts -%]
- <a href="[% c.uri_for('council_contacts', problem.council ) %]">[% PROCESS value_or_nbsp value=problem.council %]</a>
- [%- ELSE -%]
- [%- PROCESS value_or_nbsp value=problem.council -%]
- [%- 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.state == 'fixed' || problem.state == 'confirmed' %]<br>[% loc('Confirmed:' ) %]&nbsp;[% PROCESS format_time time=problem.confirmed %][% END -%]
- [%- IF problem.state == 'fixed' %]<br>[% loc('Fixed:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%]
- [%- IF problem.state == 'confirmed' %]<br>[% loc('Last&nbsp;update:') %] [% PROCESS format_time time=problem.lastupdate %][% END -%]</small>
- </td>
- <td>[% PROCESS format_time time=problem.whensent %]</td>
- <td><a href="[% c.uri_for( 'report_edit', problem.id ) %]">[% loc('Edit') %]</a></td>
- </tr>
-[%- END -%]
+ [% INCLUDE 'admin/problem_row.html' %]
</table>
[% INCLUDE 'admin/list_updates.html' %]
diff --git a/templates/web/default/admin/stats.html b/templates/web/default/admin/stats.html
new file mode 100644
index 000000000..ccd41601a
--- /dev/null
+++ b/templates/web/default/admin/stats.html
@@ -0,0 +1,61 @@
+[% INCLUDE 'admin/header.html' title=loc('Stats') %]
+
+[% IF show_count %]
+<p>
+<strong>[% tprintf( loc( '%sreports between %s and %s' ), ( unconfirmed ? loc( 'All' ) _ ' ' : loc( 'Confirmed' ) _ ' ' ), start_date.ymd, end_date.ymd ) | html %]</strong>
+</p>
+<table>
+ <thead>
+ <td style="width: 8em"><strong>[% loc('Current state') %]</strong></td>
+ <td><strong>[% loc('Count') %]</strong></td>
+ </thead>
+ [% total = 0 %]
+ [% WHILE ( state = states.next ) %]
+ [% total = total + state.get_column( 'count' ) %]
+ <tr>
+ <td>[% state.state | html %]</td>
+ <td>[% state.get_column( 'count' ) %]</td>
+ </tr>
+ [% END %]
+ <tr>
+ <td><strong>[% loc( 'Total' ) %]</strong></td>
+ <td><strong>[% total %]</strong></td>
+ </tr>
+</table>
+
+[% IF unconfirmed %]
+ <p>
+ <small>[% loc( 'Note that when including unconfirmed reports we use the date the report was created which may not be in the same month the report was confirmed so the numbers may jump about a little' ) %]</small>
+ </p>
+[% END %]
+[% END %]
+
+[% IF errors %]
+ [% FOREACH error IN errors %]
+ <p class="error">[% error %]</p>
+ [% END %]
+[% END %]
+
+<form method="post" action="[% c.uri_for('stats') %]" enctype="application/x-www-form-urlencoded" accept-charset="utf-8">
+ <p>
+ <label for="start_date_year">[% loc('Start Year:') %]</label><input type="text" name="start_date_year" id="start_date_year" size="5" value="[% start_date ? start_date.year : '' | html %]" />
+ <label for="start_date_month">[% loc('Start month:') %]</label><input type="text" name="start_date_month" id="start_date_month" size="3" value="[% start_date ? start_date.month : '' | html %]" />
+ <label for="start_date_day">[% loc('Start day:') %]</label><input type="text" name="start_date_day" id="start_date_day" size="3" value="[% start_date ? start_date.day : '' | html %]" />
+ </p>
+
+ <p>
+ <label for="end_date_year">[% loc('End Year:') %]</label><input type="text" name="end_date_year" id="end_date_year" size="5" value="[% end_date ? end_date.year : '' | html %]" />
+ <label for="end_date_month">[% loc('End month:') %]</label><input type="text" name="end_date_month" id="end_date_month" size="3" value="[% end_date ? end_date.month : '' | html %]" />
+ <label for="end_date_day">[% loc('End day:') %]</label><input type="text" name="end_date_day" id="end_date_day" size="3" value="[% end_date ? end_date.day : '' | html %]" />
+ </p>
+
+ <p>
+ <input type="checkbox" name="unconfirmed" id="unconfirmed"[% unconfirmed ? ' checked' : '' %] /><label for="unconfirmed">[% loc('Include unconfirmed reports') %]</label>
+ </p>
+
+ <p>
+ <input type="submit" name="getcounts" size="30" id="getcounts" value="Get Count" />
+ </p>
+</form>
+
+[% INCLUDE 'admin/footer.html' %]
diff --git a/templates/web/default/admin/update_edit.html b/templates/web/default/admin/update_edit.html
index 8746e62c4..e1783fd7c 100644
--- a/templates/web/default/admin/update_edit.html
+++ b/templates/web/default/admin/update_edit.html
@@ -36,6 +36,7 @@
[% ELSIF update.user.id == update.problem.user.id && update.mark_open %]
<li>[% loc('Update reopened problem') %]</li>
[% END %]
+[% PROCESS abuse_button %] [% PROCESS flag_button user=update.user %]</li>
<li>[% loc('Cobrand:') %] [% update.cobrand %]</li>
<li>[% loc('Cobrand data:') %] [% update.cobrand_data %]</li>
<li>[% loc('Created:') %] [% PROCESS format_time time=update.created %]</li>
diff --git a/templates/web/default/alert/choose.html b/templates/web/default/alert/choose.html
index ef632e2d1..fad365088 100644
--- a/templates/web/default/alert/choose.html
+++ b/templates/web/default/alert/choose.html
@@ -6,7 +6,7 @@
<p>[% loc('We found more than one match for that location. We show up to ten matches, please try a different search if yours is not here.') %]</p>
<ul class="pc_alternatives">
[% FOREACH match IN possible_location_matches %]
- <li><a href="[% choose_target_uri %]?pc=[% match | uri %]">[% match | html %]</a></li>
+ <li><a href="[% choose_target_uri %]?latitude=[% match.latitude | uri %];longitude=[% match.longitude | uri %]">[% match.address | html %]</a></li>
[% END %]
</ul>
[% END %]
diff --git a/templates/web/default/around/around_index.html b/templates/web/default/around/around_index.html
index 8c144e469..3e6d96acd 100644
--- a/templates/web/default/around/around_index.html
+++ b/templates/web/default/around/around_index.html
@@ -33,7 +33,7 @@
<p>[% loc('We found more than one match for that location. We show up to ten matches, please try a different search if yours is not here.') %]</p>
<ul class="pc_alternatives">
[% FOREACH match IN possible_location_matches %]
- <li><a href="/around?pc=[% match | uri %]">[% match | html %]</a></li>
+ <li><a href="/around?latitude=[% match.latitude | uri %];longitude=[% match.longitude | uri %]">[% match.address | html %]</a></li>
[% END %]
</ul>
[% END %]
diff --git a/templates/web/default/around/display_location.html b/templates/web/default/around/display_location.html
index 395054645..bef8954ba 100755
--- a/templates/web/default/around/display_location.html
+++ b/templates/web/default/around/display_location.html
@@ -66,6 +66,17 @@
</div>
<div id="side">
+<p id="text_map">
+ [% loc( 'To <strong>report a problem</strong>, simply click on the map at the correct location.' ) %]
+ [%
+ tprintf(
+ loc("<small>If you cannot see the map, <a href='%s' rel='nofollow'>skip this step</a>.</small>"),
+ url_skip
+ )
+ %]
+ <span id="text_map_arrow"></span>
+</p>
+
<h1>[% loc('Problems in this area') %]</h1>
<p id="alert_links_area">
@@ -78,22 +89,6 @@
</a>
</p>
-[% IF location_error %]
- <ul class="error">
- <li>[% location_error | html %]</li>
- </ul>
-[% END %]
-
-<p id="text_map">
- [% loc( 'To report a problem, simply <strong>click on the map</strong> at the correct location.' ) %]
- [%
- tprintf(
- loc("<small>If you cannot see the map, <a href='%s' rel='nofollow'>skip this step</a>.</small>"),
- url_skip
- )
- %]
-</p>
-
<div id="nearby_lists">
<h2>[% loc('Reports on and around the map') %]</h2>
@@ -119,6 +114,14 @@
</div>
</div>
+
+<div style="display:none" id="side-form">
+[% INCLUDE "report/new/fill_in_details_form.html"
+ js = 1,
+ report.used_map = 1
+%]
+</div>
+
</form>
[% INCLUDE 'footer.html' %]
diff --git a/templates/web/default/faq/faq-en-gb.html b/templates/web/default/faq/faq-en-gb.html
index e943bf28f..bd9ee889f 100755
--- a/templates/web/default/faq/faq-en-gb.html
+++ b/templates/web/default/faq/faq-en-gb.html
@@ -29,7 +29,7 @@ or clearing</strong>, such as:
issues &ndash; 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 your council
+ to the right department. <strong>You will need to contact [% c.cobrand.moniker == 'southampton' ? 'the' : 'your' %] council
directly for problems such as</strong>:
<ul><li>Anti-social behaviour
@@ -114,12 +114,12 @@ submit buttons, which the map uses when reporting a problem. It&rsquo;s fixed in
latest nightly build of Safari, so will presumably be fixed in the next
release. Until then, I&rsquo;ve sadly had to disable dragging to avoid people
dragging an empty square.</dd>
- <dt>Why isn&rsquo;t there a zoom button on the map?</dt>
- <dd>There isn&rsquo;t a zoom on the map as we want to keep things very local;
- this might mean that you&rsquo;ll need to pan around to figure out where the
- problem is if you&rsquo;re not familiar with the area. If you&rsquo;re from the
- council then the emailed version of the problem report will contain the
- closest road to the pin on the map.</dd>
+ <dt>Why can&rsquo;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&rsquo;ve made, wherever they are. If you&rsquo;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>This site is great – why aren&rsquo;t you better publicised?</dt>
<dd>As a tiny charity we simply don&rsquo;t have a publicity budget, and we
diff --git a/templates/web/default/footer.html b/templates/web/default/footer.html
index 657d9d826..bd684b722 100644
--- a/templates/web/default/footer.html
+++ b/templates/web/default/footer.html
@@ -12,13 +12,24 @@
[% loc('<a href="http://www.mysociety.org/"><img id="logo" width="133" height="26" src="/i/mysociety-dark.png" alt="View mySociety.org"><span id="logoie"></span></a>') %]
-<p id="footer">
- [% loc('Built by <a href="http://www.mysociety.org/">mySociety</a>') %]
- | <a href="http://github.com/mysociety/fixmystreet">[% loc('Source code') %]</a>
- | <a href="/contact">[% loc("Contact FixMyStreet") %]</a>
-</p>
+<div id="footer">
+ <p>[% loc('Built by <a href="http://www.mysociety.org/">mySociety</a>') %]
+ | <a href="/contact">[% loc("Contact FixMyStreet") %]</a></p>
-[% INCLUDE 'tracking_code.html' %]
+ <p>Mobile apps:
+ <a href="http://itunes.apple.com/gb/app/fixmystreet/id297456545">iPhone</a>,
+ <a href="http://itunes.apple.com/gb/app/streetreport/id371891859">StreetReport (iPhone)</a>
+ | <a href="https://market.android.com/details?id=com.android.fixmystreet">Android</a>
+ | <a href="http://store.ovi.com/content/107557">Nokia</a>
+ </p>
+
+ <p class="l">[% loc('Are you from a council? Would you like better integration with FixMyStreet?') %]
+ <a href="http://www.mysociety.org/fixmystreet-for-local-council-websites/">[% loc('Find out about FixMyStreet for councils') %]</a>.
+
+ <p class="r">[% loc('Are you a developer? Would you like to contribute to FixMyStreet?') %]
+ [% loc('Our code is open source and <a href="http://github.com/mysociety/fixmystreet">available on GitHub</a>.') %]
+ </p>
+</div>
[% INCLUDE 'debug_footer.html' %]
diff --git a/templates/web/default/header.html b/templates/web/default/header.html
index 431e6db65..b2bfd27d7 100644
--- a/templates/web/default/header.html
+++ b/templates/web/default/header.html
@@ -2,17 +2,19 @@
<html lang="[% lang_code %]">
<head>
- [% INCLUDE 'common_header_tags.html' %]
-
- <style type="text/css">@import url("/css/core.css"); @import url("/css/main.css");</style>
+ <link rel="stylesheet" type="text/css" href="/css/core.css">
+ <link rel="stylesheet" type="text/css" href="/css/main.css">
<!--[if LT IE 7]>
- <style type="text/css">@import url("/css/ie6.css");</style>
+ <link rel="stylesheet" type="text/css" href="/css/ie6.css">
<![endif]-->
+ [% INCLUDE 'common_header_tags.html' %]
+
[% IF c.req.uri.host == 'osm.fixmystreet.com' %]
<link rel="canonical" href="http://www.fixmystreet.com[% c.req.uri.path_query %]">
[% END %]
+ [% INCLUDE 'tracking_code.html' %]
</head>
<body>
diff --git a/templates/web/default/maps/fms.html b/templates/web/default/maps/fms.html
index 6e6d747bf..2b322849b 100644
--- a/templates/web/default/maps/fms.html
+++ b/templates/web/default/maps/fms.html
@@ -1,8 +1,9 @@
[% map_js = BLOCK %]
<!-- <script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&mkt=en-GB"></script> -->
-<script type="text/javascript" src="/jslib/OpenLayers-2.10/OpenLayers.js"></script>
+<script type="text/javascript" src="/js/OpenLayers.fixmystreet.js"></script>
<script type="text/javascript" src="/js/map-OpenLayers.js"></script>
<script type="text/javascript" src="/js/map-bing-ol.js"></script>
+<script type="text/javascript" src="/js/jquery.ba-hashchange.min.js"></script>
<!--[if lte IE 6]>
<link rel="stylesheet" href="/jslib/OpenLayers-2.10/theme/default/ie6-style.css" type="text/css" />
<![endif]-->
diff --git a/templates/web/default/maps/openlayers.html b/templates/web/default/maps/openlayers.html
index b84799fdd..3cf615306 100644
--- a/templates/web/default/maps/openlayers.html
+++ b/templates/web/default/maps/openlayers.html
@@ -9,7 +9,7 @@
var fixmystreet = {
'page': '[% page %]',
'area': '[% map.area %]',
- 'all_pins': [% all_pins || "''" | html %],
+ 'all_pins': '[% all_pins %]',
'latitude': [% map.latitude %],
'longitude': [% map.longitude %],
[% IF map.any_zoom -%]
diff --git a/templates/web/default/maps/osm-streetview.html b/templates/web/default/maps/osm-streetview.html
index 9de99c253..3c97af5b9 100644
--- a/templates/web/default/maps/osm-streetview.html
+++ b/templates/web/default/maps/osm-streetview.html
@@ -1,5 +1,5 @@
[% map_js = BLOCK %]
-<script type="text/javascript" src="/jslib/OpenLayers-2.10/OpenLayers.js"></script>
+<script type="text/javascript" src="/js/OpenLayers.fixmystreet.js"></script>
<script type="text/javascript" src="/js/map-OpenLayers.js"></script>
<script type="text/javascript" src="/js/map-streetview.js"></script>
<!--[if lte IE 6]>
diff --git a/templates/web/default/maps/osm.html b/templates/web/default/maps/osm.html
index e2762ee26..b0607220f 100644
--- a/templates/web/default/maps/osm.html
+++ b/templates/web/default/maps/osm.html
@@ -1,5 +1,5 @@
[% map_js = BLOCK %]
-<script type="text/javascript" src="/jslib/OpenLayers-2.10/OpenLayers.js"></script>
+<script type="text/javascript" src="/js/OpenLayers.fixmystreet.js"></script>
<script type="text/javascript" src="/js/map-OpenLayers.js"></script>
<script type="text/javascript" src="/js/map-OpenStreetMap.js"></script>
<!--[if lte IE 6]>
diff --git a/templates/web/default/open311/index.html b/templates/web/default/open311/index.html
new file mode 100644
index 000000000..8ce18f68c
--- /dev/null
+++ b/templates/web/default/open311/index.html
@@ -0,0 +1,147 @@
+[% INCLUDE 'header.html', title => 'Open311' %]
+
+<h1>[% loc('Open311 API for the mySociety FixMyStreet server') %]</h1>
+
+[% IF error %]
+<p>[% tprintf( loc('Note: <strong>%s</strong>'), error ) %]</p>
+[% END %]
+
+<p>[% loc('At the moment only searching for and looking at reports work.') %]</p>
+<p>[% loc('This API implementation is work in progress and not yet stabilized. It will change without warnings in the future.') %]</p>
+
+<ul>
+<li><a rel="nofollow" href="http://www.open311.org/">[% loc('Open311 initiative web page') %]</a></li>
+<li><a rel="nofollow" href="http://wiki.open311.org/GeoReport_v2">[% loc('Open311 specification') %]</a></li>
+</ul>
+
+<p>[% tprintf( loc('At most %d requests are returned in each query. The returned requests are ordered by requested_datetime, so to get all requests, do several searches with rolling start_date and end_date.'), c.config.RSS_LIMIT ) %]</p>
+
+<p>[% loc('The following Open311 v2 attributes are returned for each request: service_request_id, description, lat, long, media_url, status, requested_datetime, updated_datetime, service_code and service_name.') %]</p>
+
+<p>[% loc('In addition, the following attributes that are not part of the Open311 v2 specification are returned: agency_sent_datetime, title (also returned as part of description), interface_used, comment_count, requestor_name (only present if requestor allowed the name to be shown on this site).') %]</p>
+
+<p>[% loc('The Open311 v2 attribute agency_responsible is used to list the administrations that received the problem report, which is not quite the way the attribute is defined in the Open311 v2 specification.') %]</p>
+
+<p>[% tprintf( loc('With request searches, it is also possible to search for agency_responsible to limit the requests to those sent to a single administration. The search term is the administration ID provided by <a href="%s">MaPit</a>.'), c.config.MAPIT_URL ) %]</p>
+
+<p>[% loc('Examples:') %]</p>
+
+<ul>
+
+[% jurisdiction_id = 'fiksgatami.no' %]
+[% examples = [
+ {
+ url = c.cobrand.base_url _ "/open311/v2/discovery.xml?jurisdiction_id=$jurisdiction_id",
+ info = 'discovery information',
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/services.xml?jurisdiction_id=$jurisdiction_id",
+ info = 'list of services provided',
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/services.xml?jurisdiction_id=$jurisdiction_id&lat=60&long=11",
+ info = 'list of services provided for WGS84 coordinate latitude 60 longitude 11',
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/requests/1.xml?jurisdiction_id=$jurisdiction_id",
+ info = 'Request number 1',
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/requests.xml?jurisdiction_id=$jurisdiction_id&status=open&agency_responsible=1601&end_date=2011-03-10",
+ info = 'All open requests reported before 2011-03-10 to Trondheim (id 1601)',
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/requests.xml?jurisdiction_id=$jurisdiction_id&status=open&agency_responsible=219|220",
+ info = 'All open requests in Asker (id 220) and Bærum (id 219)',
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/requests.xml?jurisdiction_id=$jurisdiction_id&service_code=Vannforsyning",
+ info = "All requests with the category 'Vannforsyning'",
+ },
+ {
+ url = c.cobrand.base_url _ "/open311/v2/requests.xml?jurisdiction_id=$jurisdiction_id&status=closed",
+ info = 'All closed requests',
+ },
+] %]
+[% FOREACH examples %]
+ <li><a href="[% url %]">[% info %]</a>
+ [% IF url.match('/requests.xml') %]
+ [ <a href="http://maps.google.com/?q=[% url.replace('.xml', '.rss') | uri %]">[% loc('GeoRSS on Google Maps') %]</a> ]
+ [% END %]
+ <br>[% url | html %]</li>
+[% END %]
+
+</ul>
+
+<h2>Searching</h2>
+
+<p>The following search parameters can be used:</p>
+
+<dl>
+
+<dt>service_request_id</dt>
+<dd>Search for numeric ID of specific request.
+ Using this is identical to asking for a individual request using
+ the /requests/number.format URL.</dd>
+<dt>service_code</dt>
+<dd>Search for the given category / service type string.</dd>
+
+<dt>status</dt>
+<dd>Search for open or closed (fixed) requests.</dd>
+
+<dt>start_date<dt>
+<dd>Only return requests with requested_datetime set after or at the
+ date and time specified. The format is YYYY-MM-DDTHH:MM:SS+TZ:TZ.</dd>
+
+<dt>end_date<dt>
+<dd>Only return requests with requested_datetime set before the date
+ and time specified. Same format as start_date.</dd>
+
+<dt>agency_responsible</dt>
+<dd>ID of government body receiving the request. Several IDs can be
+ specified with | as a separator.</dd>
+
+<dt>interface_used<dt>
+<dd>Name / identifier of interface used.</dd>
+
+<dt>has_photo<dt>
+<dd>Search for entries with or without photos. Use value 'true' to
+only get requests created with images, and 'false' to get those
+created without images.</dd>
+
+<dt>max_requests</dt>
+<dd>Max number of requests to return from the search. If it is larger
+than the site specific max_requests value specified in the discovery
+call, the value provided is ignored.</dd>
+
+<dl>
+
+<p>The search result might look like this:</p>
+
+<pre>[% "
+ <requests>
+ <request>
+ <agency_responsible>
+ <recipient>Statens vegvesen region øst</recipient>
+ <recipient>Oslo</recipient>
+ </agency_responsible>
+ <agency_sent_datetime>2011-04-23T10:28:55+02:00</agency_sent_datetime>
+ <description>Mangler brustein: Det støver veldig på tørre dager. Her burde det vært brustein.</description>
+ <detail>Det støver veldig på tørre dager. Her burde det vært brustein.</detail>
+ <interface_used>Web interface</interface_used>
+ <lat>59.916848</lat>
+ <long>10.728148</long>
+ <requested_datetime>2011-04-23T09:32:36+02:00</requested_datetime>
+ <requestor_name>Petter Reinholdtsen</requestor_name>
+ <service_code>Annet</service_code>
+ <service_name>Annet</service_name>
+ <service_request_id>1</service_request_id>
+ <status>open</status>
+ <title>Mangler brustein</title>
+ <updated_datetime>2011-04-23T10:28:55+02:00</updated_datetime>
+ </request>
+ </requests>
+" | html %]</pre>
+
+[% INCLUDE 'footer.html' %]
+
diff --git a/templates/web/default/report/new/category.html b/templates/web/default/report/new/category.html
new file mode 100644
index 000000000..6ec0eb19f
--- /dev/null
+++ b/templates/web/default/report/new/category.html
@@ -0,0 +1,10 @@
+[% FILTER collapse %]
+[% IF category_options.size %]
+ <label for='form_category'>[% category_label | html %]</label>
+ <select name='category' id='form_category'>
+ [% FOREACH cat_op IN category_options %]
+ <option value='[% cat_op | html %]'[% ' selected' IF report.category == cat_op %]>[% cat_op | html %]</option>
+ [% END %]
+ </select>
+[% END %]
+[% END -%]
diff --git a/templates/web/default/report/new/councils_text.html b/templates/web/default/report/new/councils_text.html
new file mode 100644
index 000000000..1da5746c1
--- /dev/null
+++ b/templates/web/default/report/new/councils_text.html
@@ -0,0 +1,9 @@
+[% FILTER collapse %]
+[% IF area_ids_to_list.size == 0 %]
+ [% PROCESS 'report/new/councils_text_none.html' %]
+[% ELSIF area_ids_to_list.size == all_councils.size %]
+ [% PROCESS 'report/new/councils_text_all.html' %]
+[% ELSE %]
+ [% PROCESS 'report/new/councils_text_some.html' %]
+[% END %]
+[% END -%]
diff --git a/templates/web/default/report/new/all_councils_text.html b/templates/web/default/report/new/councils_text_all.html
index 8514e0b0a..8514e0b0a 100644
--- a/templates/web/default/report/new/all_councils_text.html
+++ b/templates/web/default/report/new/councils_text_all.html
diff --git a/templates/web/default/report/new/no_councils_text.html b/templates/web/default/report/new/councils_text_none.html
index f991e031f..f991e031f 100644
--- a/templates/web/default/report/new/no_councils_text.html
+++ b/templates/web/default/report/new/councils_text_none.html
diff --git a/templates/web/default/report/new/some_councils_text.html b/templates/web/default/report/new/councils_text_some.html
index 042e89914..042e89914 100644
--- a/templates/web/default/report/new/some_councils_text.html
+++ b/templates/web/default/report/new/councils_text_some.html
diff --git a/templates/web/default/report/new/fill_in_details.html b/templates/web/default/report/new/fill_in_details.html
index 8150ba894..a9a113283 100644
--- a/templates/web/default/report/new/fill_in_details.html
+++ b/templates/web/default/report/new/fill_in_details.html
@@ -28,211 +28,10 @@
<div id="skipped-map">
[% END %]
-<h1>[% loc('Reporting a problem') %]</h1>
-
-[% IF report.used_map %]
- [% IF partial_token %]
- <p id="unknown">[% loc('Please note your report has <strong>not yet been sent</strong>. Choose a category and add further information below, then submit.') %]</p>
- [% END %]
-<p>[% loc('You have located the problem at the point marked with a purple pin on the map. If this is not the correct location, simply click on the map again. ') %]</p>
-[% END %]
-
-[% IF area_ids_to_list.size == 0 %]
- [% INCLUDE 'report/new/no_councils_text.html' %]
-[% ELSIF area_ids_to_list.size == all_councils.size %]
- [% INCLUDE 'report/new/all_councils_text.html' %]
-[% ELSE %]
- [% INCLUDE 'report/new/some_councils_text.html' %]
-[% END %]
-
-<p>
-[% IF skipped %]
- [% loc('Please fill in the form below with details of the problem, and describe the location as precisely as possible in the details box.') %]
-[% ELSE %]
- [% INCLUDE 'report/new/fill_in_details_text.html' %]
-[% END %]
-</p>
-
-[% INCLUDE 'errors.html' %]
-
-<div id="problem_form">
-
-[% INCLUDE 'report/new/form_heading.html' %]
-
-<div id="fieldset">
-
-
-
-
-
-[% IF field_errors.council %]
- <div class='form-error'>[% field_errors.council %]</div>
-[% END %]
-
-[% IF category_options.size %]
- [% IF field_errors.category %]
- <div class='form-error'>[% field_errors.category %]</div>
- [% END %]
-
- <div class="form-field">
- <label for="form_category">[% category_label | html %]</label>
- <select name="category" id="form_category">
- [%- FOREACH cat_op IN category_options %]
- <option value="[% cat_op | html %]"[% ' selected' IF report.category == cat_op %]>[% cat_op | html %]</option>
- [%- END %]
- </select>
- </div>
-[% END %]
-
-[% IF field_errors.title %]
- <div class='form-error'>[% field_errors.title %]</div>
-[% END %]
-
-<div class="form-field">
- <label for="form_title">[% loc('Subject:') %]</label>
- <input type="text" value="[% report.title | html %]" name="title" id="form_title" size="25">
-</div>
-
-[% IF field_errors.detail %]
- <div class='form-error'>[% field_errors.detail %]</div>
-[% END %]
-
-<div class="form-field">
- <label for="form_detail">[% loc('Details:') %]</label>
- <textarea name="detail" id="form_detail" rows="7" cols="26">[% report.detail | html %]</textarea>
-</div>
-
-[% IF c.cobrand.allow_photo_upload %]
- [% IF field_errors.photo %]
- <div class='form-error'>[% field_errors.photo %]</div>
- [% END %]
-
- <div class='form-field'>
- [% IF upload_fileid || report.photo %]
- <p>[% loc('You have already attached a photo to this report, attaching another one will replace it.') %]</p>
- [% IF upload_fileid %]
- <input type="hidden" name="upload_fileid" value="[% upload_fileid %]" />
- [% END %]
- [% IF report.photo %]
- <img align="right" src="/photo?id=[% report.id %]" hspace="5">
- [% END %]
- [% END %]
-
- <label for="form_photo">[% loc('Photo:') %]</label>
- <input type="file" name="photo" id="form_photo" style="width:20em">
- </div>
-[% END %]
-
-[% IF c.user_exists %]
-
- [% INCLUDE name_phone %]
-
- [% INCLUDE 'report/new/notes.html' %]
-
- <p id="problem_submit">
- <input type="submit" value="[% loc('Submit') %]">
- </p>
-
-[% ELSE %]
-
- [% IF field_errors.email %]
- <div class='form-error'>[% field_errors.email %]</div>
- [% END %]
-
- <div class="form-field">
- <label for="form_email">[% loc('Your email:') %]</label>
- <input type="email" value="[% report.user.email | html %]" name="email" id="form_email" size="25">
- </div>
-
-[% INCLUDE 'report/new/notes.html' %]
-
-<div id="form_sign_in">
- <h3>[% loc("Now to submit your report&hellip; do you have a FixMyStreet password?") %]</h3>
-
- <div id="form_sign_in_yes">
-
- [% IF field_errors.password %]
- <div class='form-error'>[% field_errors.password %]</div>
- [% END %]
-
- <p>
- <label class="n" for="password_sign_in">[% loc('<strong>Yes</strong>, I have a password:') %]</label>
- <input type="password" name="password_sign_in" id="password_sign_in" value="" size="25">
- </p>
-
- <p>
- <input type="checkbox" id="remember_me" name="remember_me" value='1'[% ' checked' IF remember_me %]>
- <label class="n" for="remember_me">
- [% loc('Keep me signed in on this computer') %]
- </label>
- </p>
-
- <p>
- <input type="submit" name="submit_sign_in" value="[% loc('Submit') %]">
- </p>
-
- </div>
- <div id="form_sign_in_no">
-
- <p>[% loc('<strong>No</strong>, let me confirm my report by email:') %]</p>
-
- <div id="fieldset">
-
- [% INCLUDE name_phone %]
-
- <div class="form-field">
- <label for="password_register">[% loc('Enter a new password:') %]</label>
- <input type="password" name="password_register" id="password_register" value="" size="25">
- </div>
- </div>
-
- <p style="clear:both"><small>[% loc('Providing a password is optional, but doing so will allow you to more easily report problems, leave updates and manage your reports.') %]</small></p>
-
- <p>
- <input type="submit" name="submit_register" value="[% loc('Submit') %]">
- </p>
-
- </div>
-
-</div>
-
-[% END %]
-
-[% IF partial_token %]
- <input type="hidden" name="partial" value="[% partial_token.token %]">
-[% END %]
-
-<input type="hidden" name="submit_problem" value="1">
-
-</div>
-</div>
+[% PROCESS 'report/new/fill_in_details_form.html' %]
</div>
</form>
[% INCLUDE 'footer.html' %]
-[% BLOCK name_phone %]
- [% IF field_errors.name %]
- <div class='form-error'>[% field_errors.name %]</div>
- [% END %]
-
- <div class="form-field">
- <label for="form_name">[% loc('Your name:') %]</label>
- <input type="text" value="[% report.name | html %]" name="name" id="form_name" size="25">
- </div>
-
- <div class="checkbox">
- [%# if there is nothing in the name field then set check box as default on form %]
- <input type="checkbox" name="may_show_name" id="form_may_show_name" value="1"[% ' checked' IF !report.anonymous || !report.name %]>
- <label for="form_may_show_name">[% loc('Show my name publicly') %]</label>
- <br><small>[% loc('(we never show your email address or phone number)') %]</small>
- </div>
-
- <div>
- <label for="form_phone">[% loc('Phone:') %]</label>
- <input type="text" value="[% report.user.phone | html %]" name="phone" id="form_phone" size="15">
- <small>[% loc('(optional)') %]</small>
- </div>
-[% END %]
-
diff --git a/templates/web/default/report/new/fill_in_details_form.html b/templates/web/default/report/new/fill_in_details_form.html
new file mode 100644
index 000000000..eea020e3f
--- /dev/null
+++ b/templates/web/default/report/new/fill_in_details_form.html
@@ -0,0 +1,211 @@
+<h1>[% loc('Reporting a problem') %]</h1>
+
+[% IF report.used_map %]
+ [% IF partial_token %]
+ <p id="unknown">[% loc('Please note your report has <strong>not yet been sent</strong>. Choose a category and add further information below, then submit.') %]</p>
+ [% END %]
+<p>[% loc('You have located the problem at the point marked with a purple pin on the map. If this is not the correct location, simply click on the map again. ') %]</p>
+[% END %]
+
+[% IF js %]
+ <p id="councils_text">[%
+ tprintf(
+ loc('All the information you provide here will be sent to <strong>%s</strong>.'),
+ loc('the local council')
+ );
+ %]
+ [% loc('The subject and details of the problem will be public, plus your name if you give us permission.') %]
+ </p>
+[% ELSE %]
+ [% PROCESS 'report/new/councils_text.html' %]
+[% END %]
+
+<p>
+[% IF report.used_map %]
+ [% INCLUDE 'report/new/fill_in_details_text.html' %]
+[% ELSE %]
+ [% loc('Please fill in the form below with details of the problem, and describe the location as precisely as possible in the details box.') %]
+[% END %]
+</p>
+
+[% INCLUDE 'errors.html' %]
+
+<div id="problem_form">
+
+[% INCLUDE 'report/new/form_heading.html' %]
+
+<div id="fieldset">
+
+
+
+
+
+[% IF field_errors.council %]
+ <div class='form-error'>[% field_errors.council %]</div>
+[% END %]
+
+[% IF field_errors.title %]
+ <div class='form-error'>[% field_errors.title %]</div>
+[% END %]
+
+<div class="form-field">
+ <label for="form_title">[% loc('Subject:') %]</label>
+ <input type="text" value="[% report.title | html %]" name="title" id="form_title" size="25">
+</div>
+
+[% IF field_errors.detail %]
+ <div class='form-error'>[% field_errors.detail %]</div>
+[% END %]
+
+<div class="form-field">
+ <label for="form_detail">[% loc('Details:') %]</label>
+ <textarea name="detail" id="form_detail" rows="7" cols="26">[% report.detail | html %]</textarea>
+</div>
+
+[% IF js %]
+ <div class="form-field" id="form_category_row">
+ <label for="form_category">[% loc('Category:') %]</label>
+ <select name="category" id="form_category"><option>[% loc('Loading...') %]</option></select>
+ </div>
+[% ELSE %]
+ [% IF category_options.size %]
+ [% IF field_errors.category %]
+ <div class='form-error'>[% field_errors.category %]</div>
+ [% END %]
+
+ <div class="form-field">
+ [% PROCESS "report/new/category.html" %]
+ </div>
+ [% END %]
+[% END %]
+
+[% IF c.cobrand.allow_photo_upload %]
+ [% IF field_errors.photo %]
+ <div class='form-error'>[% field_errors.photo %]</div>
+ [% END %]
+
+ <div class='form-field'>
+ [% IF upload_fileid || report.photo %]
+ <p>[% loc('You have already attached a photo to this report, attaching another one will replace it.') %]</p>
+ [% IF upload_fileid %]
+ <input type="hidden" name="upload_fileid" value="[% upload_fileid %]" />
+ [% END %]
+ [% IF report.photo %]
+ <img align="right" src="/photo?id=[% report.id %]" hspace="5">
+ [% END %]
+ [% END %]
+
+ <label for="form_photo">[% loc('Photo:') %]</label>
+ <input type="file" name="photo" id="form_photo" style="width:20em">
+ </div>
+[% END %]
+
+[% IF c.user_exists %]
+
+ [% INCLUDE name_phone %]
+
+ [% INCLUDE 'report/new/notes.html' %]
+
+ <p id="problem_submit">
+ <input type="submit" value="[% loc('Submit') %]">
+ </p>
+
+[% ELSE %]
+
+ [% IF field_errors.email %]
+ <div class='form-error'>[% field_errors.email %]</div>
+ [% END %]
+
+ <div class="form-field">
+ <label for="form_email">[% loc('Your email:') %]</label>
+ <input type="email" value="[% report.user.email | html %]" name="email" id="form_email" size="25">
+ </div>
+
+[% INCLUDE 'report/new/notes.html' %]
+
+<div id="form_sign_in">
+ <h3>[% loc("Now to submit your report&hellip; do you have a FixMyStreet password?") %]</h3>
+
+ <div id="form_sign_in_yes">
+
+ [% IF field_errors.password %]
+ <div class='form-error'>[% field_errors.password %]</div>
+ [% END %]
+
+ <p>
+ <label class="n" for="password_sign_in">[% loc('<strong>Yes</strong>, I have a password:') %]</label>
+ <input type="password" name="password_sign_in" id="password_sign_in" value="" size="25">
+ </p>
+
+ <p>
+ <input type="checkbox" id="remember_me" name="remember_me" value='1'[% ' checked' IF remember_me %]>
+ <label class="n" for="remember_me">
+ [% loc('Keep me signed in on this computer') %]
+ </label>
+ </p>
+
+ <p>
+ <input type="submit" name="submit_sign_in" value="[% loc('Submit') %]">
+ </p>
+
+ </div>
+ <div id="form_sign_in_no">
+
+ <p>[% loc('<strong>No</strong>, let me confirm my report by email:') %]</p>
+
+ <div id="fieldset">
+
+ [% INCLUDE name_phone %]
+
+ <div class="form-field">
+ <label for="password_register">[% loc('Enter a new password:') %]</label>
+ <input type="password" name="password_register" id="password_register" value="" size="25">
+ </div>
+ </div>
+
+ <p style="clear:both"><small>[% loc('Providing a password is optional, but doing so will allow you to more easily report problems, leave updates and manage your reports.') %]</small></p>
+
+ <p>
+ <input type="submit" name="submit_register" value="[% loc('Submit') %]">
+ </p>
+
+ </div>
+
+</div>
+
+[% END %]
+
+[% IF partial_token %]
+ <input type="hidden" name="partial" value="[% partial_token.token %]">
+[% END %]
+
+<input type="hidden" name="submit_problem" value="1">
+
+</div>
+</div>
+
+
+[% BLOCK name_phone %]
+ [% IF field_errors.name %]
+ <div class='form-error'>[% field_errors.name %]</div>
+ [% END %]
+
+ <div class="form-field">
+ <label for="form_name">[% loc('Your name:') %]</label>
+ <input type="text" value="[% report.name | html %]" name="name" id="form_name" size="25">
+ </div>
+
+ <div class="checkbox">
+ [%# if there is nothing in the name field then set check box as default on form %]
+ <input type="checkbox" name="may_show_name" id="form_may_show_name" value="1"[% ' checked' IF !report.anonymous || !report.name %]>
+ <label for="form_may_show_name">[% loc('Show my name publicly') %]</label>
+ <br><small>[% loc('(we never show your email address or phone number)') %]</small>
+ </div>
+
+ <div>
+ <label for="form_phone">[% loc('Phone:') %]</label>
+ <input type="text" value="[% report.user.phone | html %]" name="phone" id="form_phone" size="15">
+ <small>[% loc('(optional)') %]</small>
+ </div>
+[% END %]
+
diff --git a/templates/web/default/report/new/fill_in_details_text.html b/templates/web/default/report/new/fill_in_details_text.html
index 44c60ed6e..9ebb8107b 100644
--- a/templates/web/default/report/new/fill_in_details_text.html
+++ b/templates/web/default/report/new/fill_in_details_text.html
@@ -1,5 +1,5 @@
[%
- IF details != 'none';
+ IF area_ids_to_list.size != 0;
loc('Please fill in details of the problem below. The council won\'t be able
to help unless you leave as much detail as you can, so please describe the exact location of
the problem (e.g. on a wall), what it is, how long it has been there, a description (and a
diff --git a/templates/web/default/reports/council.html b/templates/web/default/reports/council.html
index 2b004cf50..0739e84e8 100755
--- a/templates/web/default/reports/council.html
+++ b/templates/web/default/reports/council.html
@@ -23,7 +23,7 @@
<p>[% loc('Follow a ward link to view only reports within that ward.') %]</p>
<ul>
[% FOR child IN children.values.sort('name') %]
-<li><a href="[% child.url %]">[% child.name %]</a></p>
+<li><a href="[% child.url %]">[% child.name %]</a></li>
[% END %]
</ul>
[% END %]
diff --git a/templates/web/default/tracking_code.html b/templates/web/default/tracking_code.html
index e5fc13793..b506d41c1 100644
--- a/templates/web/default/tracking_code.html
+++ b/templates/web/default/tracking_code.html
@@ -1,16 +1,18 @@
[% IF c.config.BASE_URL == "http://www.fixmystreet.com" %]
-<!-- Piwik -->
<script type="text/javascript">
-var pkBaseURL = (("https:" == document.location.protocol) ? "https://piwik.mysociety.org/" : "http://piwik.mysociety.org/");
-document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
-</script><script type="text/javascript">
-try {
-var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 8);
-piwikTracker.trackPageView();
-piwikTracker.enableLinkTracking();
-} catch( err ) {}
-</script><noscript><p><img src="http://piwik.mysociety.org/piwik.php?idsite=8" style="border:0" alt=""/></p></noscript>
-<!-- End Piwik Tag -->
+
+ var _gaq = _gaq || [];
+ _gaq.push(['_setAccount', 'UA-660910-4']);
+ _gaq.push(['_setDomainName', '.fixmystreet.com']);
+ _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>
[% ELSE %]
<!-- Tracking code not inserted as "[% c.config.BASE_URL %]" not "http://www.fixmystreet.com" -->
[% END %]