diff options
author | Struan Donald <struan@exo.org.uk> | 2012-11-22 16:08:42 +0000 |
---|---|---|
committer | Struan Donald <struan@exo.org.uk> | 2012-11-22 16:08:42 +0000 |
commit | 9ad3b72c6177216022d3ec4747ef0d7ffcd3dbb9 (patch) | |
tree | 281d526ba9b22eef0dbaaf6b498448806ae0a00a | |
parent | 0754d06f830c9eaf148ee276def1a80cbc04e83b (diff) | |
parent | 8db5951dee5a41ae6dbe428f779f01d94c3b079b (diff) |
Merge remote-tracking branch 'origin/master'
-rw-r--r-- | perllib/FixMyStreet/SendReport/Open311.pm | 7 | ||||
-rw-r--r-- | templates/web/fixmybarangay/header.html | 6 | ||||
-rw-r--r-- | templates/web/fixmybarangay/report/_message_manager.html | 2 | ||||
-rw-r--r-- | web/cobrands/fixmybarangay/message_manager_client.js | 28 |
4 files changed, 35 insertions, 8 deletions
diff --git a/perllib/FixMyStreet/SendReport/Open311.pm b/perllib/FixMyStreet/SendReport/Open311.pm index 70bce3d47..8d7a418af 100644 --- a/perllib/FixMyStreet/SendReport/Open311.pm +++ b/perllib/FixMyStreet/SendReport/Open311.pm @@ -96,7 +96,7 @@ sub send { if ($row->cobrand eq 'fixmybarangay') { # FixMyBarangay endpoints expect external_id as an attribute - $row->extra( [ { 'name' => 'external_id', 'value' => $row->id } ] ); + $row->extra( [ { 'name' => 'external_id', 'value' => $row->id } ] ); } my $resp = $open311->send_service_request( $row, $h, $contact->email ); @@ -109,6 +109,11 @@ sub send { if ( $resp ) { $row->external_id( $resp ); $row->send_method_used('Open311'); + if ($row->cobrand eq 'fixmybarangay') { + # currently the only external body using Open311 is DPS + # (this will change when we have 'body' logic in place, meanwhile: hardcoded) + $row->external_body("DPS"); + } $result *= 0; $self->success( 1 ); } else { diff --git a/templates/web/fixmybarangay/header.html b/templates/web/fixmybarangay/header.html index 2557a26cb..911a72022 100644 --- a/templates/web/fixmybarangay/header.html +++ b/templates/web/fixmybarangay/header.html @@ -25,10 +25,8 @@ [% allow_creation = !c.cobrand.only_authed_can_create || (c.user && c.user.from_council); %] [% IF allow_creation %] - - <link rel="stylesheet" href="[% version('/js/fancybox/jquery.fancybox-1.3.4.css') %]"> - <script src="[% version('/js/fancybox/jquery.fancybox-1.3.4.pack.js') %]" charset="utf-8"></script> - + <link rel="stylesheet" href="[% version('/js/fancybox/jquery.fancybox-1.3.4.css') %]"> + <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> <script> $(document).ready(function() { diff --git a/templates/web/fixmybarangay/report/_message_manager.html b/templates/web/fixmybarangay/report/_message_manager.html index 41544a754..04ffb0f42 100644 --- a/templates/web/fixmybarangay/report/_message_manager.html +++ b/templates/web/fixmybarangay/report/_message_manager.html @@ -34,7 +34,7 @@ </ul> <script type="text/javascript"> - + $(document).ready(function() { var $mm_message_list = $('#mm-message-list'); var mm_url = "[% c.config.MESSAGE_MANAGER_URL %]"; // from config diff --git a/web/cobrands/fixmybarangay/message_manager_client.js b/web/cobrands/fixmybarangay/message_manager_client.js index fa04063c8..ba7383933 100644 --- a/web/cobrands/fixmybarangay/message_manager_client.js +++ b/web/cobrands/fixmybarangay/message_manager_client.js @@ -133,12 +133,36 @@ var message_manager = (function() { } }; - // btoa doesn't work on all browers? var make_base_auth = function(user, password) { var tok = user + ':' + password; - var hash = btoa(tok); + var hash = encodeBase64(tok); // window.btoa(tok) doesn't work on all browers return "Basic " + hash; }; + + function encodeBase64(input) { + var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=', + INVALID_CHARACTER_ERR = (function () { + // fabricate a suitable error object + try { + document.createElement('$'); + } catch (error) { + return error; + } + }()), + block, charCode, idx, map, output; + // encoder (with wee change by mhl Mark to satisfy jslint) + // [https://gist.github.com/999166] by [https://github.com/nignag] + for (idx = 0, map = chars, output = ''; + input.charAt(idx | 0) || ((map = '=') && (idx % 1)); + output += map.charAt(63 & block >> 8 - idx % 1 * 8)) { + charCode = input.charCodeAt(idx += 3/4); + if (charCode > 0xFF) { + throw INVALID_CHARACTER_ERR; + } + block = block << 8 | charCode; + } + return output; + } var get_current_auth_credentials = function() { var base_auth = ""; |