diff options
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Report/New.pm | 5 | ||||
-rw-r--r-- | templates/web/fixmybarangay/around/tabbed_lists.html | 41 | ||||
-rw-r--r-- | templates/web/fixmybarangay/header.html | 15 |
3 files changed, 36 insertions, 25 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Report/New.pm b/perllib/FixMyStreet/App/Controller/Report/New.pm index 5bf184ae6..3d356cc40 100644 --- a/perllib/FixMyStreet/App/Controller/Report/New.pm +++ b/perllib/FixMyStreet/App/Controller/Report/New.pm @@ -1001,6 +1001,11 @@ sub save_user_and_report : Private { # Set unknown to DB unknown $report->council( undef ) if $report->council eq '-1'; + # if there is a Message Manager message ID, pass it back to the client view + if ($c->req->param('mm_msg_id')) { + $report->service( $c->req->param('mm_msg_id') ); + } + # save the report; $report->in_storage ? $report->update : $report->insert(); diff --git a/templates/web/fixmybarangay/around/tabbed_lists.html b/templates/web/fixmybarangay/around/tabbed_lists.html index 4f96e0b5d..8ebc2593d 100644 --- a/templates/web/fixmybarangay/around/tabbed_lists.html +++ b/templates/web/fixmybarangay/around/tabbed_lists.html @@ -42,50 +42,43 @@ IF allow_creation %] <script type="text/javascript"> $(document).ready(function() { - + + var mm_url = "http://dave.message-manager.dev.mysociety.org/"; + var mm_populate_list = function(data) { $('#mm-status-message-container').text("Got messages as " + data['username']); $('input[name=mm_text]').prop('checked', false); // uncheck all } - - + var mm_selected_message = function(data) { var msg_text = ""; - var msg_id = ""; + var service_id = ""; if (data['success']) { + // msg_text = $('#form_detail').val( $('input[name=mm_text]:checked').val() ); # == message data msg_text = data['data']['Message']['message']; - msg_id = data['data']['Message']['id']; - // $('#form_detail').val( $('input[name=mm_text]:checked').val() ); + service_id = mm_url + "messages/view/" + data['data']['Message']['id']; } else { $('input[name=mm_text]').prop('checked', false); // uncheck all } $('#form_detail').val(msg_text); - $('#form_mm_msg_id').val(msg_id); + $('#mm_msg_id').val(service_id); } - - message_manager.config({url_root: "http://dave.message-manager.dev.mysociety.org/"}); + message_manager.config({url_root: mm_url}); message_manager.setup_click_listener({callback:mm_selected_message}); - - $('#available-submit').click(function(e){ - e.preventDefault(); - message_manager.get_available_messages({callback:mm_populate_list}); - }); - // problem form hidden input "form_mm_msg_id": pass the MM id into FMS, if used + // problem form hidden input "mm_msg_id": pass the MM id into FMS, if used $('<input type="hidden"/>').attr({ - 'id': 'form_mm_msg_id', - 'name': 'form_mm_msg_id', + 'id': 'mm_msg_id', + 'name': 'mm_msg_id', }).appendTo($('#problem_form')); - $('#available-submit').click(); - - /* - $('#assign-fms-submit').click(function() { - message_manager.assign_fms_id($('#message_id').val(), $('#fms_id').val(), {callback:dummy_clear_assign_boxes}); + $('#available-submit').click(function(e){ + e.preventDefault(); + message_manager.get_available_messages({callback:mm_populate_list}); }); - */ + $('#available-submit').click(); }); - + </script> [% END %] diff --git a/templates/web/fixmybarangay/header.html b/templates/web/fixmybarangay/header.html index 3d054aacb..30967b57f 100644 --- a/templates/web/fixmybarangay/header.html +++ b/templates/web/fixmybarangay/header.html @@ -24,7 +24,20 @@ <script src="[% version('/js/fancybox/jquery.fancybox-1.3.4.pack.js') %]" charset="utf-8"></script> <script src="[% version('/cobrands/fixmybarangay/message_manager_client.js') %]" charset="utf-8"></script> - + + [% allow_creation = !c.cobrand.only_authed_can_create || (c.user && c.user.from_council); %] + [%IF allow_creation && problem.service %] + <script> + $(document).ready(function() { + var mm_msg_id ="[% problem.service %]".match(/\d+$/); + var fms_id = "[% problem.id %]"; + if (mm_msg_id && fms_id) { + message_manager.config({url_root: "http://dave.message-manager.dev.mysociety.org/"}); + message_manager.assign_fms_id(mm_msg_id, fms_id); + } + }); + </script> + [% END %] </head> <body class="[% bodyclass | html IF bodyclass %]"> |