aboutsummaryrefslogtreecommitdiffstats
path: root/templates
diff options
context:
space:
mode:
authorZarino Zappia <mail@zarino.co.uk>2018-07-27 15:20:02 +0100
committerZarino Zappia <mail@zarino.co.uk>2018-08-07 16:51:40 +0100
commit4e8e8d3b4912ec6552ae5290dbf47cf1d5968107 (patch)
treedda7d89f186f6f7347f5b63232656fbefd882c03 /templates
parent0f4a56c8654262d49a18b04e0517f99561da565f (diff)
"Report a problem here" button in nav when viewing a location
Fixes #2016. When you load a page that includes either a problem report, or is centered on a location, the "Report a problem" button in the nav bar (that normally takes you to the homepage) becomes a "Report a(nother) problem here" button, that leads directly to the new report form for the location in question. On full map pages (/around and any /report/<id> pages loaded via it) the reporting form will be rendered client-side, avoiding a full page reload. On pages lacking the full map (eg: missing fixmystreet.bbox_strategy), namely /reports/<area> and any /report/<id> page that hasn’t been client-side loaded via /around, we fall back to a server-side page load. Finally, as you’d expect, the text and URL for the button dynamically update as you move around the map, or switch between the different client-side states of the reporting flow. We also hide the button entirely when you’re reporting a problem, which was something suggested a long time ago.
Diffstat (limited to 'templates')
-rw-r--r--templates/web/base/js/translation_strings.html6
-rw-r--r--templates/web/base/main_nav_items.html10
2 files changed, 15 insertions, 1 deletions
diff --git a/templates/web/base/js/translation_strings.html b/templates/web/base/js/translation_strings.html
index a2e3c16c5..f6e1e580b 100644
--- a/templates/web/base/js/translation_strings.html
+++ b/templates/web/base/js/translation_strings.html
@@ -71,6 +71,12 @@ fixmystreet.password_minimum_length = [% c.cobrand.password_minimum_length %];
login_with_email: '[% loc('Log in with email') | replace("'", "\\'") %]',
[% END ~%]
+ report_a_problem_btn: {
+ default: '[% loc('Report a problem') | replace("'", "\\'") %]',
+ here: '[% loc('Report a problem here') | replace("'", "\\'") %]',
+ another: '[% loc('Report another problem here') | replace("'", "\\'") %]'
+ },
+
offline: {
your_reports: '[% loc('Your offline reports') | replace("'", "\\'") %]',
update_saved: '[% loc('Your update has been saved offline for submission when back online.') | replace("'", "\\'") %]',
diff --git a/templates/web/base/main_nav_items.html b/templates/web/base/main_nav_items.html
index 618aa8328..3940052a3 100644
--- a/templates/web/base/main_nav_items.html
+++ b/templates/web/base/main_nav_items.html
@@ -1,4 +1,12 @@
-[%~ INCLUDE navitem uri=(homepage_template ? '/report' : '/') label=loc('Report a problem') attrs='class="report-a-problem-btn"' ~%]
+[%~ IF problem ~%]
+ [%~ INCLUDE navitem uri='/report/new?longitude=' _ problem.longitude _ '&amp;latitude=' _ problem.latitude label=loc('Report another problem here') attrs='class="report-a-problem-btn"' ~%]
+[%~ ELSIF latitude AND longitude ~%]
+ [%~ INCLUDE navitem uri='/report/new?longitude=' _ longitude _ '&amp;latitude=' _ latitude label=loc('Report a problem here') attrs='class="report-a-problem-btn"' ~%]
+[%~ ELSIF homepage_template ~%]
+ [%~ INCLUDE navitem uri='/report' label=loc('Report a problem') attrs='class="report-a-problem-btn"' ~%]
+[%~ ELSE ~%]
+ [%~ INCLUDE navitem uri='/' label=loc('Report a problem') attrs='class="report-a-problem-btn"' ~%]
+[%~ END ~%]
[%~ IF c.user_exists ~%]
[%~ INCLUDE navitem uri='/my' label=loc('Your account') ~%]