aboutsummaryrefslogtreecommitdiffstats
path: root/web
diff options
context:
space:
mode:
Diffstat (limited to 'web')
-rw-r--r--web/cobrands/bristol/js.js24
-rw-r--r--web/cobrands/fixmystreet-uk-councils/roadworks.js49
-rw-r--r--web/cobrands/fixmystreet/assets.js80
-rw-r--r--web/cobrands/hounslow/assets.js70
-rw-r--r--web/cobrands/westminster/assets.js3
5 files changed, 134 insertions, 92 deletions
diff --git a/web/cobrands/bristol/js.js b/web/cobrands/bristol/js.js
new file mode 100644
index 000000000..c2431607f
--- /dev/null
+++ b/web/cobrands/bristol/js.js
@@ -0,0 +1,24 @@
+(function(){
+
+if (!fixmystreet.maps) {
+ return;
+}
+
+var org_id = '1015';
+var body = "Bristol City Council";
+fixmystreet.assets.add(fixmystreet.roadworks.layer_future, {
+ http_options: { params: { organisation_id: org_id } },
+ body: body
+});
+fixmystreet.assets.add(fixmystreet.roadworks.layer_planned, {
+ http_options: { params: { organisation_id: org_id } },
+ body: body
+});
+
+fixmystreet.roadworks.config = {
+ summary_heading_text: 'Location',
+ extra_dates_text: '<small>Please note that dates are updated by the contractor carrying out the works and the finish date may be incorrect in cases of unauthorised or overrunning works</small>',
+ skip_delays: true
+};
+
+})();
diff --git a/web/cobrands/fixmystreet-uk-councils/roadworks.js b/web/cobrands/fixmystreet-uk-councils/roadworks.js
index 083f669c8..f4da4c310 100644
--- a/web/cobrands/fixmystreet-uk-councils/roadworks.js
+++ b/web/cobrands/fixmystreet-uk-councils/roadworks.js
@@ -186,33 +186,38 @@ fixmystreet.roadworks.display_message = function(feature) {
desc = attr.works_desc.replace(/\\n/g, '\n');
var config = this.config,
+ summary_heading_text = config.summary_heading_text || 'Summary',
tag_top = config.tag_top || 'p',
colon = config.colon ? ':' : '';
- var $msg = $('<div class="js-roadworks-message js-roadworks-message-' + feature.layer.id + ' box-warning"><' + tag_top + '>Roadworks are scheduled near this location, so you may not need to report your issue.</' + tag_top + '></div>');
- var $dl = $("<dl></dl>").appendTo($msg);
- $dl.append("<dt>Dates" + colon + "</dt>");
- $dl.append($("<dd></dd>").text(start + " until " + end));
- $dl.append("<dt>Summary" + colon + "</dt>");
- var $summary = $("<dd></dd>").appendTo($dl);
- tooltip.split("\n").forEach(function(para) {
- if (para.match(/^(\d{2}\s+\w{3}\s+(\d{2}:\d{2}\s+)?\d{4}( - )?){2}/)) {
- // skip showing the date again
- return;
- }
- if (config.skip_delays && para.match(/^delays/)) {
- // skip showing traffic delay information
- return;
- }
- $summary.append(para).append("<br />");
- });
- if (desc) {
- $dl.append("<dt>Description" + colon + "</dt>");
- $dl.append($("<dd></dd>").text(desc));
+ var $msg = $('<div class="js-roadworks-message js-roadworks-message-' + feature.layer.id + ' box-warning"><' + tag_top + '>Roadworks are scheduled near this location, so you may not need to report your issue.</' + tag_top + '></div>');
+ var $dl = $("<dl></dl>").appendTo($msg);
+ $dl.append("<dt>Dates" + colon + "</dt>");
+ var $dates = $("<dd></dd>").appendTo($dl);
+ $dates.text(start + " until " + end);
+ if (config.extra_dates_text) {
+ $dates.append('<br>' + config.extra_dates_text);
+ }
+ $dl.append("<dt>" + summary_heading_text + colon + "</dt>");
+ var $summary = $("<dd></dd>").appendTo($dl);
+ tooltip.split("\n").forEach(function(para) {
+ if (para.match(/^(\d{2}\s+\w{3}\s+(\d{2}:\d{2}\s+)?\d{4}( - )?){2}/)) {
+ // skip showing the date again
+ return;
}
- if (config.text_after) {
- $dl.append(config.text_after);
+ if (config.skip_delays && para.match(/^delays/)) {
+ // skip showing traffic delay information
+ return;
}
+ $summary.append(para).append("<br />");
+ });
+ if (desc) {
+ $dl.append("<dt>Description" + colon + "</dt>");
+ $dl.append($("<dd></dd>").text(desc));
+ }
+ if (config.text_after) {
+ $dl.append(config.text_after);
+ }
$msg.prependTo('#js-post-category-messages');
};
diff --git a/web/cobrands/fixmystreet/assets.js b/web/cobrands/fixmystreet/assets.js
index b2b1cd602..c30fa2b5e 100644
--- a/web/cobrands/fixmystreet/assets.js
+++ b/web/cobrands/fixmystreet/assets.js
@@ -275,8 +275,9 @@ function init_asset_layer(layer, pins_layer) {
layer.fixmystreet.fault_layer.setZIndex(layer.getZIndex()-1);
}
- if (fixmystreet.page == 'new' && (layer.fixmystreet.usrn || layer.fixmystreet.road)) {
- // If the user visits /report/new directly and doesn't change the pin
+ if (layer.fixmystreet.usrn || layer.fixmystreet.road) {
+ // If an asset layer only loads once a category is selected, or if the
+ // user visits /report/new directly and doesn't change the pin
// location, then the assets:selected/maps:update_pin events are never
// fired and USRN's checkFeature is never called. This results in a
// report whose location was never looked up against the USRN layer,
@@ -1101,18 +1102,34 @@ fixmystreet.message_controller = (function() {
return false;
}
- // make sure we fire the code to check if an asset is selected if
- // we change options in the Highways England message
- $(fixmystreet).on('report_new:highways_change', function() {
- if (fixmystreet.body_overrides.get_only_send() === 'Highways England') {
- $('#' + stopperId).remove(); // Get rid of any stopper message
- responsibility_off(); // Will also reenable form
+ function is_matching_stopper(stopper, i) {
+ var only_send = fixmystreet.body_overrides.get_only_send();
+ var body = $('#form_category').data('body');
+
+ if (OpenLayers.Util.indexOf(ignored_bodies, body) > -1) {
+ return false;
+ }
+
+ var category = $('#form_category').val();
+ if (category != stopper.category) {
+ return false;
+ }
+ if (only_send == 'TfL') {
+ return false;
+ }
+
+ if (stopper.answers) {
+ var answer = $('#form_' + stopper.code).val();
+ if (OpenLayers.Util.indexOf(stopper.answers, answer) > -1) {
+ return true;
+ }
+ return false;
} else {
- $(fixmystreet).trigger('report_new:category_change');
+ return true;
}
- });
+ }
- $(fixmystreet).on('report_new:category_change', function() {
+ function check_for_stopper() {
var only_send = fixmystreet.body_overrides.get_only_send();
if (only_send == 'Highways England') {
// If we're sending to Highways England, this message doesn't matter
@@ -1120,31 +1137,7 @@ fixmystreet.message_controller = (function() {
}
var $id = $('#' + stopperId);
- var body = $('#form_category').data('body');
- var matching = $.grep(stoppers, function(stopper, i) {
- if (OpenLayers.Util.indexOf(ignored_bodies, body) > -1) {
- return false;
- }
-
- var category = $('#form_category').val();
- if (category != stopper.category) {
- return false;
- }
- if (only_send == 'TfL') {
- return false;
- }
-
- if (stopper.answers) {
- var answer = $('#form_' + stopper.code).val();
- if (OpenLayers.Util.indexOf(stopper.answers, answer) > -1) {
- return true;
- }
- return false;
- } else {
- return true;
- }
- });
-
+ var matching = $.grep(stoppers, is_matching_stopper);
if (!matching.length) {
$id.remove();
if ( !$('#js-roads-responsibility').is(':visible') && !$('#js-duplicate-reports').is(':visible') ) {
@@ -1170,8 +1163,21 @@ fixmystreet.message_controller = (function() {
$msg.insertBefore('#js-post-category-messages');
}
disable_report_form(stopper.keep_category_extras);
+ }
+
+ // make sure we fire the code to check if an asset is selected if
+ // we change options in the Highways England message
+ $(fixmystreet).on('report_new:highways_change', function() {
+ if (fixmystreet.body_overrides.get_only_send() === 'Highways England') {
+ $('#' + stopperId).remove(); // Get rid of any stopper message
+ responsibility_off(); // Will also reenable form
+ } else {
+ $(fixmystreet).trigger('report_new:category_change');
+ }
});
+ $(fixmystreet).on('report_new:category_change', check_for_stopper);
+
return {
asset_found: function() {
responsibility_off();
@@ -1225,6 +1231,8 @@ fixmystreet.message_controller = (function() {
stoppers = [];
},
+ check_for_stopper: check_for_stopper,
+
add_ignored_body: function(body) {
ignored_bodies.push(body);
}
diff --git a/web/cobrands/hounslow/assets.js b/web/cobrands/hounslow/assets.js
index 6bd603b8c..abe3d20da 100644
--- a/web/cobrands/hounslow/assets.js
+++ b/web/cobrands/hounslow/assets.js
@@ -42,40 +42,42 @@ fixmystreet.assets.add($.extend(true, {}, defaults, {
asset_item: 'bin'
}));
-fixmystreet.assets.add($.extend(true, {}, defaults, {
- http_options: {
- params: {
- TYPENAME: "trees"
- }
- },
- asset_id_field: 'central_asset_id',
- attributes: {
- central_asset_id: 'central_asset_id',
- asset_details: 'asset_number'
- },
- asset_category: [
- "Tree Danger/Obstruction",
- "Branches overhanging",
- "Damage By Tree",
- "Dead/Dying/Diseased",
- "Dying or dangerous tree",
- "Empty tree Pit",
- "Fallen or leaning tree",
- "General Maintenance and pruning",
- "Illuminated Traffic signal obstructed by vegetation",
- "Traffic signal obstructed by vegetation",
- "Pest: Tree/Shrub",
- "Pests in trees and shrubs",
- "Tree Branches Overhanging",
- "Tree Maintenance",
- "Tree causing damage to property",
- "Tree obstructing street light",
- "Trees or shrubs blocking visibility",
- "Trees or shrubs causing obstruction of highway",
- "Trees"
- ],
- asset_item: 'tree'
-}));
+// Disabled for now as the data is quite out of date and causing problems
+// sending reports.
+// fixmystreet.assets.add($.extend(true, {}, defaults, {
+// http_options: {
+// params: {
+// TYPENAME: "trees"
+// }
+// },
+// asset_id_field: 'central_asset_id',
+// attributes: {
+// central_asset_id: 'central_asset_id',
+// asset_details: 'asset_number'
+// },
+// asset_category: [
+// "Tree Danger/Obstruction",
+// "Branches overhanging",
+// "Damage By Tree",
+// "Dead/Dying/Diseased",
+// "Dying or dangerous tree",
+// "Empty tree Pit",
+// "Fallen or leaning tree",
+// "General Maintenance and pruning",
+// "Illuminated Traffic signal obstructed by vegetation",
+// "Traffic signal obstructed by vegetation",
+// "Pest: Tree/Shrub",
+// "Pests in trees and shrubs",
+// "Tree Branches Overhanging",
+// "Tree Maintenance",
+// "Tree causing damage to property",
+// "Tree obstructing street light",
+// "Trees or shrubs blocking visibility",
+// "Trees or shrubs causing obstruction of highway",
+// "Trees"
+// ],
+// asset_item: 'tree'
+// }));
fixmystreet.assets.add($.extend(true, {}, defaults, {
http_options: {
diff --git a/web/cobrands/westminster/assets.js b/web/cobrands/westminster/assets.js
index e015f35a1..1c0358301 100644
--- a/web/cobrands/westminster/assets.js
+++ b/web/cobrands/westminster/assets.js
@@ -101,12 +101,15 @@ fixmystreet.assets.add(defaults, {
found: function(layer, feature) {
if (!fixmystreet.assets.selectedFeature()) {
fixmystreet.body_overrides.only_send('TfL');
+ $('#category_meta').empty();
} else {
fixmystreet.body_overrides.remove_only_send();
}
+ fixmystreet.message_controller.check_for_stopper();
},
not_found: function(layer) {
fixmystreet.body_overrides.remove_only_send();
+ fixmystreet.message_controller.check_for_stopper();
}
}
});