diff options
-rw-r--r-- | templates/web/default/report/new/category.html | 2 | ||||
-rw-r--r-- | web/js/fixmystreet.js | 19 |
2 files changed, 15 insertions, 6 deletions
diff --git a/templates/web/default/report/new/category.html b/templates/web/default/report/new/category.html index 6ec0eb19f..095cd7c2e 100644 --- a/templates/web/default/report/new/category.html +++ b/templates/web/default/report/new/category.html @@ -1,7 +1,7 @@ [% FILTER collapse %] [% IF category_options.size %] <label for='form_category'>[% category_label | html %]</label> - <select name='category' id='form_category'> + <select name='category' id='form_category'[% ' onchange="form_category_onchange()"' IF category_extras.size %]> [% FOREACH cat_op IN category_options %] <option value='[% cat_op | html %]'[% ' selected' IF report.category == cat_op %]>[% cat_op | html %]</option> [% END %] diff --git a/web/js/fixmystreet.js b/web/js/fixmystreet.js index 638930a35..524bcdafa 100644 --- a/web/js/fixmystreet.js +++ b/web/js/fixmystreet.js @@ -4,11 +4,20 @@ */ function form_category_onchange() { - $.getJSON('/report/new/category_extras', { - latitude: fixmystreet.latitude, - longitude: fixmystreet.longitude, - category: this.options[ this.selectedIndex ].text, - }, function(data) { + var cat = $('#form_category'); + var args = { + category: cat.val() + }; + + if ( typeof fixmystreet !== 'undefined' ) { + args['latitude'] = fixmystreet.latitude; + args['longitude'] = fixmystreet.longitude; + } else { + args['latitude'] = $('input[name="latitude"]').val(); + args['longitude'] = $('input[name="longitude"]').val(); + } + + $.getJSON('/report/new/category_extras', args, function(data) { if ( data.category_extra ) { if ( $('#category_meta').size() ) { $('#category_meta').html( data.category_extra); |