Fixes for event stream and section view actions
This commit is contained in:
@@ -5,7 +5,7 @@ Qsupplier.App.Table = DS.Model.extend
|
||||
height: attr 'number'
|
||||
position_x: attr 'number'
|
||||
position_y: attr 'number'
|
||||
occupied: attr 'boolean'
|
||||
# occupied: attr 'boolean'
|
||||
section: DS.belongsTo('section')
|
||||
#active_list: DS.belongsTo('list', key: 'active_list')
|
||||
active_list: DS.belongsTo('list')
|
||||
@@ -13,3 +13,4 @@ Qsupplier.App.Table = DS.Model.extend
|
||||
#active_list: (->
|
||||
#@get('list')
|
||||
#).property('list')
|
||||
occupied: (-> !!@get('active_list')).property('active_list.id')
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
Qsupplier.App.ApplicationView = Ember.View.extend
|
||||
didInsertElement: ->
|
||||
Qsupplier.watch_events()
|
||||
selector_mappings =
|
||||
'.top-menu-root': '/'
|
||||
'.top-menu-lists': 'lists'
|
||||
|
||||
@@ -22,7 +22,7 @@ Qsupplier.App.SectionTableView = Ember.View.extend DragNDrop.Draggable,
|
||||
(@content.get('position_y') || 0) * @containerHeight() / section_height
|
||||
).property('content.section.height', 'content.position_y')
|
||||
|
||||
style: (->
|
||||
style: (->
|
||||
"position:absolute;width:83px;height:48px;left:#{@get('offsetX')}px;top:#{@get('offsetY')}px"
|
||||
).property('offsetX', 'offsetY')
|
||||
|
||||
@@ -48,11 +48,11 @@ Qsupplier.App.SectionTableView = Ember.View.extend DragNDrop.Draggable,
|
||||
@$el = @$()
|
||||
#@$('.table-actions').hide()
|
||||
#title = @$('.table-actions .title').clone()
|
||||
content = @$('.table-actions')
|
||||
@$('.table-actions').hide()
|
||||
#@$('.table-actions .title').remove()
|
||||
content.hide()
|
||||
@$el.on 'click', =>
|
||||
content.toggle() if @$el.hasClass('occupied') and not @get('controller.editmode')
|
||||
# duplication of .table-actions because variable gets unshadowed
|
||||
@$('.table-actions').toggle() if @$el.hasClass('occupied') and not @get('controller.editmode')
|
||||
#@$el.qtip
|
||||
#content:
|
||||
#text: content
|
||||
|
||||
@@ -2,7 +2,7 @@ root = exports ? this
|
||||
root.Qsupplier=
|
||||
watch_events: ->
|
||||
faye = new Faye.Client(event_host)
|
||||
faye.subscribe "/supplier/"+supplier_id, (e)=>
|
||||
faye.subscribe "/supplier/#{supplier_id}", (e)=>
|
||||
console.log "Event: #{e.event}"
|
||||
console.log e.data
|
||||
if(e.event == 'new_order')
|
||||
@@ -14,14 +14,17 @@ root.Qsupplier=
|
||||
# console.log "Ugly ember fix for adding order #{e.data.order.id} as relation to its list"
|
||||
list = order.get('list')
|
||||
list.get('orders').addRecord order
|
||||
if table = list.get('table')
|
||||
if table.get('active_list') isnt list
|
||||
table.set 'active_list', list
|
||||
, 200
|
||||
else if(e.event == 'list_needs_help')
|
||||
if Qsupplier.App and list = Qsupplier.App.List.findCached(e.data.id)
|
||||
list.markNeedsHelp()
|
||||
# old stuff
|
||||
$('#list-needs-help-indicator-'+e.data.id).removeClass('hide')
|
||||
$('#list-is-helped-button-'+e.data.id).removeClass('hide')
|
||||
$('.section-table-list-'+e.data.id).addClass('needs_help')
|
||||
# $('#list-needs-help-indicator-'+e.data.id).removeClass('hide')
|
||||
# $('#list-is-helped-button-'+e.data.id).removeClass('hide')
|
||||
# $('.section-table-list-'+e.data.id).addClass('needs_help')
|
||||
else if(e.event == 'list_needs_payment')
|
||||
if Qsupplier.App and list = Qsupplier.App.List.findCached(e.data.id)
|
||||
list.markNeedsPayment()
|
||||
@@ -34,7 +37,6 @@ root.Qsupplier=
|
||||
else if e.event == 'list_update'
|
||||
if Qsupplier.App
|
||||
list = Qsupplier.App.List.updateOrAdd(e.data.list)
|
||||
debugger
|
||||
else if e.event == 'list_closed'
|
||||
if Qsupplier.App and list = Qsupplier.App.List.findCached(e.data.id)
|
||||
list.markClosed()
|
||||
@@ -48,10 +50,10 @@ root.Qsupplier=
|
||||
if Qsupplier.App and list = Qsupplier.App.List.findCached(e.data.id)
|
||||
list.markHelped()
|
||||
|
||||
list_id = e.data.id
|
||||
$('#list-needs-help-indicator-'+list_id).addClass('hide')
|
||||
$('#list-is-helped-button-'+list_id).addClass('hide')
|
||||
$('.section-table-list-'+list_id).removeClass('needs_help')
|
||||
# list_id = e.data.id
|
||||
# $('#list-needs-help-indicator-'+list_id).addClass('hide')
|
||||
# $('#list-is-helped-button-'+list_id).addClass('hide')
|
||||
# $('.section-table-list-'+list_id).removeClass('needs_help')
|
||||
else if e.event == 'order_being_processed'
|
||||
if Qsupplier.App and order = Qsupplier.App.Order.findCached(e.data.id)
|
||||
order.markActive()
|
||||
|
||||
@@ -22,7 +22,7 @@ App.ApplicationSerializer = DS.ActiveModelSerializer.extend
|
||||
else
|
||||
@_super record, json, relationship
|
||||
|
||||
App.Store = DS.Store.extend
|
||||
App.ApplicationStore = DS.Store.extend
|
||||
adapter: DS.RESTAdapter.extend
|
||||
namespace: 'user'
|
||||
# user underscored paths
|
||||
|
||||
+6
-6
@@ -30,19 +30,19 @@ class List
|
||||
|
||||
view :active_by_table_id_view, type: :custom, map_function: %|function(doc){
|
||||
if(doc.ruby_class == 'List' && doc.state == 'active'){
|
||||
emit(doc.table_id, 1);
|
||||
emit(doc.table_id, 1);
|
||||
}
|
||||
}|, reduce_function: '_sum'
|
||||
|
||||
view :active_by_supplier_id_view, type: :custom, map_function: %|function(doc){
|
||||
if(doc.ruby_class == 'List' && doc.state == 'active'){
|
||||
emit(doc.supplier_id, 1);
|
||||
emit(doc.supplier_id, 1);
|
||||
}
|
||||
}|, reduce_function: '_sum'
|
||||
|
||||
view :active_by_section_id_view, type: :custom, map_function: %|function(doc){
|
||||
if(doc.ruby_class == 'List' && doc.state == 'active' && doc.section_id){
|
||||
emit(doc.section_id, 1);
|
||||
emit(doc.section_id, 1);
|
||||
}
|
||||
}|, reduce_function: '_sum'
|
||||
|
||||
@@ -50,7 +50,7 @@ class List
|
||||
if(doc.ruby_class == 'List' && doc.state == 'active'){
|
||||
emit([doc.supplier_id, doc.section_id], 1);
|
||||
}
|
||||
}], reduce_function: '_sum'
|
||||
}], reduce_function: '_sum'
|
||||
|
||||
view :for_user_view, type: :custom, map_function: %|function(doc){
|
||||
if(doc.ruby_class == 'List' && doc.user_ids && doc.user_ids.length){
|
||||
@@ -219,7 +219,7 @@ class List
|
||||
def approve_join_request_for_user!(user)
|
||||
if join_request_user_ids.include?(user.id)
|
||||
join_request_user_ids.delete(user.id)
|
||||
user.active_list_id = self.id
|
||||
user.active_list_id = self.id
|
||||
add_user(user)
|
||||
user.save
|
||||
self.is_dirty
|
||||
@@ -342,7 +342,7 @@ class List
|
||||
ho[:state] = order.state
|
||||
list_total += ho[:total_amount]
|
||||
h[:orders] << ho
|
||||
end
|
||||
end
|
||||
h[:total_amount] = list_total.round(2)
|
||||
@with_orders_as_json = h
|
||||
end
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
class SupplierExtendedTableSerializer < Qwaiter::Serializer
|
||||
root 'table'
|
||||
embed :ids, include: true
|
||||
attributes :number, :width, :height, :position_x, :position_y, :section_id, :occupied, :active_list_id
|
||||
attributes :number, :width, :height, :position_x, :position_y, :section_id, :active_list_id
|
||||
|
||||
#def list_id
|
||||
#object.active_list_id || object.active_list.try(:id)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
class SupplierTableSerializer < Qwaiter::Serializer
|
||||
self.root = :table
|
||||
embed :ids, include: true
|
||||
attributes :number, :width, :height, :position_x, :position_y, :section_id, :occupied, :needs_help
|
||||
attributes :number, :width, :height, :position_x, :position_y, :section_id, :needs_help
|
||||
has_one :supplier, serializer: SupplierSupplierSerializer
|
||||
end
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
- content_for :head do
|
||||
= javascript_include_tag 'supplier/app/application'
|
||||
- content_for :footer do
|
||||
/- content_for :footer do
|
||||
javascript:
|
||||
$(function(){
|
||||
Qsupplier.watch_events();
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
-# DEPRICATED
|
||||
-# DEPRICATED now in ember app
|
||||
ul#table-actions-list
|
||||
- if @list
|
||||
- if @list.needs_help?
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
- model_class = Section
|
||||
/- model_class = Section
|
||||
- content_for :head do
|
||||
= javascript_include_tag 'supplier/app/application'
|
||||
/- content_for :row do
|
||||
@@ -8,7 +8,7 @@
|
||||
.section-manage-tables.pull-right= link_to content_tag(:span, '', class: 'icon-pencil'), manage_tables_suppliers_section_path(@section), class: 'btn btn-mini'
|
||||
- for table in @tables
|
||||
.section-table.hide[
|
||||
class="section-table-list-#{table.active_list_id}" id="section-table-#{table.id}"
|
||||
class="section-table-list-#{table.active_list_id}" id="section-table-#{table.id}"
|
||||
data-position-x=table.position_x data-position-y=table.position_y data-table-id=table.id]
|
||||
.table-number = table.number
|
||||
.status-icons
|
||||
@@ -19,7 +19,7 @@
|
||||
- @tables.each do |table|
|
||||
.section-table-menu-content class="section-table-menu-#{table.id} section-table-list-#{table.active_list_id}"
|
||||
button.btn.btn-info.list-is-helped.hide Question answered!
|
||||
#add-tables-modal.modal.hide.fade tabindex=-1 role=:dialog aria-labeledby='add-tables-modal-label' aria-hidden=true
|
||||
/#add-tables-modal.modal.hide.fade tabindex=-1 role=:dialog aria-labeledby='add-tables-modal-label' aria-hidden=true
|
||||
.modal-header
|
||||
button.close type=:button data-dismiss=:modal aria-hidden=true x
|
||||
h3#add-tables-modal-label data-t='section.add_tables.modal.title' = t('supplier.section.add_tables.modal.title')
|
||||
@@ -37,7 +37,7 @@
|
||||
.modal-footer
|
||||
button.btn data-dismiss="modal" aria-hidden=true data-t='section.add_tables.modal.close_button'
|
||||
button.btn.btn-primary onclick="Qsupplier.add_tables_to_active_section()" data-t='section.add_tables.modal.add_button'
|
||||
#arrange-tables-modal.modal.hide.fade tabindex=-1 role=:dialog aria-labeledby='add-tables-modal-label' aria-hidden=true
|
||||
/#arrange-tables-modal.modal.hide.fade tabindex=-1 role=:dialog aria-labeledby='add-tables-modal-label' aria-hidden=true
|
||||
button.close type=:button data-dismiss=:modal aria-hidden=true x
|
||||
h3#arrange-tables-modal-label data-t='section.arrange_tables.modal.title' = t('supplier.section.arrange_tables.modal.title')
|
||||
.modal-body
|
||||
@@ -66,7 +66,7 @@
|
||||
.modal-footer
|
||||
button.btn data-dismiss="modal" aria-hidden=true data-t='section.arrange_tables.modal.close_button'
|
||||
button.btn.btn-primary onclick="Qsupplier.arrange_tables_of_active_section()" data-t='section.arrange_tables.modal.arrange_button'
|
||||
- content_for :footer do
|
||||
/- content_for :footer do
|
||||
javascript:
|
||||
var current_section_id = '#{@section.id}';
|
||||
var current_section_width = #{@section.width};
|
||||
@@ -93,7 +93,7 @@
|
||||
container.html(data); // Create a container to parse translation data
|
||||
setTranslations(container);
|
||||
this.set('content.text', container.html());
|
||||
},
|
||||
},
|
||||
once: false
|
||||
},
|
||||
title: {
|
||||
|
||||
Reference in New Issue
Block a user