aboutsummaryrefslogtreecommitdiffstats
path: root/templates
diff options
context:
space:
mode:
authorStruan Donald <struan@exo.org.uk>2012-08-23 16:27:00 +0100
committerStruan Donald <struan@exo.org.uk>2012-08-23 16:27:00 +0100
commitce3622a64d372eb4ee0c3a27f943061a434e06e4 (patch)
tree7494c586d38e9eb8306adc48966e6bc60c079e34 /templates
parentee7770bb0130e2e0483af203c7410dad8269bdd7 (diff)
allow adding of message manager messages as updates rather than as issues
Diffstat (limited to 'templates')
-rw-r--r--templates/web/fixmybarangay/report/_message_manager.html87
-rw-r--r--templates/web/fixmystreet/report/display.html4
2 files changed, 89 insertions, 2 deletions
diff --git a/templates/web/fixmybarangay/report/_message_manager.html b/templates/web/fixmybarangay/report/_message_manager.html
new file mode 100644
index 000000000..2e43af165
--- /dev/null
+++ b/templates/web/fixmybarangay/report/_message_manager.html
@@ -0,0 +1,87 @@
+
+<ul id="message_manager" class="issue-list-a tab">
+ <li id="message-control">
+ <div id="mm-username-container">username:&nbsp;<span id="mm-received-username"></span></div>
+ <div id="mm-status-message-container">
+ <div id="mm-status-message"></div>
+ </div>
+ <div id="mm-login-container">
+ <div class="input text">
+ <label for="mm-htauth-username">MM username</label>
+ <input name="mm-htauth-username" id="mm-htauth-username" type="text"/>
+ </div>
+ <div class="input password">
+ <label for="mm-htauth-password">Password</label>
+ <input name="mm-htauth-password" id="mm-htauth-password" type="password"/>
+ </div>
+ <div class="submit">
+ <input id="available-submit" type="submit" value="Get available messages"/>
+ </div>
+ </div>
+ </li>
+ <li>
+ <div id="mm-message-list" style="min-height:1em;"></div>
+ </li>
+</ul>
+
+<script type="text/javascript">
+
+$(document).ready(function() {
+
+ var mm_url = "[% c.config.MESSAGE_MANAGER_URL %]"; // from config
+
+ var mm_populate_list = function(data) {
+ $('#mm-status-message-container').text("Accessed message server as " + data['username']);
+ $('input[name=mm_text]').prop('checked', false); // uncheck all
+ }
+
+ var mm_selected_message = function(data) {
+ var msg_text = "";
+ 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'];
+ service_id = data['data']['Message']['id'];
+ } else {
+ $('input[name=mm_text]').prop('checked', false); // uncheck all
+ }
+ $('#form_detail').val(msg_text);
+ $('#external_source_id').val(service_id);
+ }
+
+ message_manager.config({url_root: mm_url});
+ message_manager.setup_click_listener({callback:mm_selected_message});
+
+ // problem form hidden input "external_source_id": pass the MM id into FMS, if used
+ $('<input type="hidden"/>').attr({
+ 'id': 'external_source_id',
+ 'name': 'external_source_id',
+ }).appendTo($('#form_update_form'));
+
+ $('#available-submit').click(function(e){
+ e.preventDefault();
+ message_manager.get_available_messages({callback:mm_populate_list});
+ });
+ $('#available-submit').click();
+
+ $('<input type="button" value="Copy to update"/>').attr({
+ 'id': 'add_support',
+ 'name': 'add_support',
+ 'class': 'green-btn'
+ }).insertAfter($('#message_manager'));
+
+ $('#add_support').click(function(e){
+ e.preventDefault();
+ $('#mm-message-list input:checked').each( function(index) {
+ var id = $(this).attr('id');
+ id = id.replace('mm_text_','');
+ $('#external_source_id').val(id);
+ $('#form_update').val( $(this).val() );
+ $('#form_update_form').on('submit', function(e) {
+ message_manager.assign_fms_id( $('#external_source_id').val(), [% problem.id %], { 'is_async': false } );
+ });
+ });
+ });
+});
+
+</script>
diff --git a/templates/web/fixmystreet/report/display.html b/templates/web/fixmystreet/report/display.html
index 269b1d15e..82d8efd8e 100644
--- a/templates/web/fixmystreet/report/display.html
+++ b/templates/web/fixmystreet/report/display.html
@@ -25,7 +25,7 @@
[% END %]
[% INCLUDE 'report/_main.html' %]
-
+[% TRY %][% INCLUDE 'report/_message_manager.html' %][% CATCH file %][% END %]
<div class="shadow-wrap">
<ul id="key-tools">
@@ -68,7 +68,7 @@
[% INCLUDE 'errors.html' %]
- <form method="post" action="[% c.uri_for( '/report/update' ) %]" name="updateForm" class="validate"[% IF c.cobrand.allow_photo_upload %] enctype="multipart/form-data"[% END %]>
+ <form method="post" action="[% c.uri_for( '/report/update' ) %]" id="form_update_form" name="updateForm" class="validate"[% IF c.cobrand.allow_photo_upload %] enctype="multipart/form-data"[% END %]>
<fieldset>
<input type="hidden" name="submit_update" value="1">
<input type="hidden" name="id" value="[% problem.id | html %]">