diff --git a/src/c3nav/site/static/site/css/c3nav.css b/src/c3nav/site/static/site/css/c3nav.css index 16599d00..bb47193f 100644 --- a/src/c3nav/site/static/site/css/c3nav.css +++ b/src/c3nav/site/static/site/css/c3nav.css @@ -313,3 +313,11 @@ footer { width:400px; max-width:95vw; } +#qr_modal button { + margin:0 4px 8px; +} + + +.nomobileclient .app-only { + display:none; +} diff --git a/src/c3nav/site/static/site/js/c3nav.js b/src/c3nav/site/static/site/js/c3nav.js index 4c5e66cd..22fbb585 100644 --- a/src/c3nav/site/static/site/js/c3nav.js +++ b/src/c3nav/site/static/site/js/c3nav.js @@ -8,6 +8,11 @@ c3nav = { c3nav.visible_areas = c3nav.main_view.attr('data-visible-areas').split(';'); c3nav.qr_modal = $('#qr_modal'); + c3nav.mobileclient = (typeof mobileclient !== "undefined") + if (c3nav.mobileclient) { + $('body').removeClass('nomobileclient'); + } + c3nav._typeahead_locations = new Bloodhound({ datumTokenizer: function(data) { var result = [data.id] @@ -47,9 +52,15 @@ c3nav = { $('#route-from-here').click(c3nav._click_route_from_here); $('#route-to-here').click(c3nav._click_route_to_here); - c3nav.qr_modal.find('button').click(function() { + c3nav.qr_modal.find('.qr-close').click(function() { c3nav.qr_modal.hide(); }); + c3nav.qr_modal.find('.share').click(function() { + mobileclient.shareUrl(c3nav.qr_modal.find('strong').text()); + }); + c3nav.qr_modal.find('.shortcut').click(function() { + mobileclient.createShortcut(c3nav.qr_modal.find('strong').text(), c3nav.qr_modal.data('title')); + }); $('.showsettings').show(); $('.savesettings, .settings').hide(); @@ -72,9 +83,12 @@ c3nav = { }, _locationselect_click_link: function(e) { e.preventDefault(); - var location_id = $(this).closest('.location-group').find('.id-field').val(); + var location_group = $(this).closest('.location-group'); + var location_id = location_group.find('.id-field').val(); + var location_title = location_group.find('.title').text(); c3nav.qr_modal.find('strong').text(window.location.origin+'/l/'+location_id+'/'); c3nav.qr_modal.find('img').attr('src', '/qr/'+location_id+'.png'); + c3nav.qr_modal.data('title', location_title) c3nav.qr_modal.show(); }, _locationselect_activate_map: function(e) { diff --git a/src/c3nav/site/templates/site/main.html b/src/c3nav/site/templates/site/main.html index d38ed11e..1de1d150 100644 --- a/src/c3nav/site/templates/site/main.html +++ b/src/c3nav/site/templates/site/main.html @@ -3,6 +3,8 @@ {% load static %} {% load i18n %} +{% block bodyclass %} nomobileclient{% endblock %} + {% block content %}