diff --git a/app/assets/javascripts/qwaiter.js.coffee b/app/assets/javascripts/qwaiter.js.coffee index f21fd9d0..e0153d67 100644 --- a/app/assets/javascripts/qwaiter.js.coffee +++ b/app/assets/javascripts/qwaiter.js.coffee @@ -1,7 +1,9 @@ window.Qwaiter= - alert: (msg) -> - alert(msg) - confirm: (options) -> + alert: (msg) -> + template = @mustache('#alert-template', {title: 'Alert', message: msg, close: 'OK'}) + $(template).modal() + false + confirm: (options) -> options ||= {} content = options.content || 'Are you sure?' title = options.title || 'Confirm' @@ -24,6 +26,13 @@ window.Qwaiter= currency: (num) -> num = 0.0 if isNaN(num) || num == '' || num == null '€ ' + parseFloat(num).toFixed(2) + mustache: (selector, locals)-> + locs = $.extend(locals, + currency: -> + (val)-> + currency(Mustache.render(val, this)) + ) + Mustache.to_html($(selector).html(), locs) jQuery.ajaxSetup 'beforeSend': (xhr) -> diff --git a/app/assets/javascripts/user/quser.js.coffee b/app/assets/javascripts/user/quser.js.coffee index 2505cdf0..bfbd169c 100644 --- a/app/assets/javascripts/user/quser.js.coffee +++ b/app/assets/javascripts/user/quser.js.coffee @@ -22,7 +22,6 @@ class Quser $('#order-row-'+e.data.id).addClass('active') if(e.event == 'order_being_delivered') $('#order-row-'+e.data.id).addClass('delivered') - console.log(e) false home_loader: -> $.getJSON(data_host + '/user/list_info.json?' + authentication_string, (res) => @handle_active_list_default_actions(res)) @@ -200,7 +199,7 @@ class Quser body.find('tr').remove() foot.find('tr').remove() if !res.orders && !res.orders.length - alert('No orders in list') + Qwaiter.alert('No orders in list') return m_obj = res body.append @mustache('#active-list-order-template', new Order(order)) for order in m_obj.orders diff --git a/app/templates/user/_alert.mustache b/app/templates/user/_alert.mustache new file mode 100644 index 00000000..b078499a --- /dev/null +++ b/app/templates/user/_alert.mustache @@ -0,0 +1,12 @@ +
diff --git a/app/views/layouts/phone.html.slim b/app/views/layouts/phone.html.slim index 54a4a76d..e311c3d7 100644 --- a/app/views/layouts/phone.html.slim +++ b/app/views/layouts/phone.html.slim @@ -17,39 +17,38 @@ html lang="en" link href="/images/apple-touch-icon.png" rel="apple-touch-icon-precomposed" link href="/favicon.ico" rel="shortcut icon" javascript: - var data_host = '#{Rails.env == 'development' ? 'http://qwaiter.dev' : 'http://data.qwaiter.com' }'; - //var data_host = 'http://localhost:3000'; + var data_host = 'http://data.qwaiter.com'; var event_host = '#{event_host}'; - //data_host = 'http://192.168.1.148:3000'; var $locale = 'en'; var $url_vars = null; - // Dummy holder when Qmobile object is not supplied by the mobile phone var QMobile, Qwaiter, Quser; - QMobile || (QMobile = { - scanQr: function(){window.location = '/select_qrcode'}, - activateRotation: function(){}, - mobile: function(){return false}, - authentication_string: function(){return this.authentication_string_storage || ''}, - authentication_object: function(){return this.authentication_object_storage || '{}'}, - setAuthToken: function(token){ - this.auth_token = token; - this.authentication_string_storage = 'auth_token='+token; - this.authentication_object_storage = '{"auth_token": "'+token+'"}' - }, - root_url: function(){return 'file:///Users/bterkuile/Documents/workspace/Qwaiter/assets'}, - root_url: function(){return ''}, - goHome: function(){ redirect_to('user_root')}, - connection_problem: function(){alert('There is a problem connecting to the server')}, - locale: function(){ return $locale || ($locale = 'en')}, - setLocale: function(locale){$locale = locale; return locale}, - token: function(){return this.auth_token}, - setUserId: function(id){ this.stored_user_id = id}, - user_id: function(){return this.stored_user_id }, - log: function(str){console.log(str)} - }); - - #{Rails.env.production? ? '' : %|QMobile.setAuthToken('#{current_user.authentication_token}');QMobile.setUserId('#{current_user.id}');|} - QMobile.log('token: '+QMobile.authentication_string()+' user_id:'+QMobile.user_id()+' ===================================================================='); + - unless ENV['QWAITER_MOBILE_EXPORT'] == 'yes' + javascript: + #{Rails.env.production? ? '' : "data_host = 'http://qwaiter.dev';"} + //var data_host = 'http://localhost:3000'; + QMobile || (QMobile = { + scanQr: function(){window.location = '/select_qrcode'}, + activateRotation: function(){}, + mobile: function(){return false}, + authentication_string: function(){return this.authentication_string_storage || ''}, + authentication_object: function(){return this.authentication_object_storage || '{}'}, + setAuthToken: function(token){ + this.auth_token = token; + this.authentication_string_storage = 'auth_token='+token; + this.authentication_object_storage = '{"auth_token": "'+token+'"}' + }, + root_url: function(){return 'file:///Users/bterkuile/Documents/workspace/Qwaiter/assets'}, + root_url: function(){return ''}, + goHome: function(){ redirect_to('user_root')}, + connection_problem: function(){alert('There is a problem connecting to the server')}, + locale: function(){ return $locale || ($locale = 'en')}, + setLocale: function(locale){$locale = locale; return locale}, + token: function(){return this.auth_token}, + setUserId: function(id){ this.stored_user_id = id}, + user_id: function(){return this.stored_user_id }, + log: function(str){console.log(str)} + }); + QMobile.setAuthToken('#{current_user.authentication_token}');QMobile.setUserId('#{current_user.id}'); body class=action_name .navbar.navbar-fixed-top @@ -76,11 +75,8 @@ html lang="en" .row .span12 = yield - / - Javascripts - \================================================== - / Placed at the end of the document so the pages load faster = javascript_include_tag "user/application" + script#alert-template[type="text/html"]= render 'alert.mustache' = yield :footer javascript: jQuery(function(){#{onload_javascript}}); diff --git a/make_android b/make_android index 523836de..30a2b914 100755 --- a/make_android +++ b/make_android @@ -1,4 +1,5 @@ #!/usr/bin/env bash rm -rf public/assets; +QWAITER_MOBILE_EXPORT=yes RAILS_ENV=production rake assets:precompile; RAILS_ENV=production rails runner script/build_mobile_app.rb