This is an automated email from the ASF dual-hosted git repository. rubys pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/whimsy.git
commit 39b7f82abbbbb69553f98190d74c334535d8b4de Author: Sam Ruby <[email protected]> AuthorDate: Wed Sep 27 14:43:03 2017 -0400 make toggling work again --- www/board/agenda/views/app.js.rb | 1 + www/board/agenda/views/buttons/post-actions.js.rb | 15 ++++++++++++++- www/board/agenda/views/layout/header.js.rb | 17 +++++++++++++++-- www/board/agenda/views/pages/select-actions.rb | 6 +----- www/board/agenda/views/utils.js.rb | 4 ++-- www/roster/views/person.js.rb | 19 ++++++++++--------- 6 files changed, 43 insertions(+), 19 deletions(-) diff --git a/www/board/agenda/views/app.js.rb b/www/board/agenda/views/app.js.rb index c7ba655..1386377 100644 --- a/www/board/agenda/views/app.js.rb +++ b/www/board/agenda/views/app.js.rb @@ -1,5 +1,6 @@ # config require_relative 'vue-config' +require_relative 'event-bus' # common require_relative 'router' diff --git a/www/board/agenda/views/buttons/post-actions.js.rb b/www/board/agenda/views/buttons/post-actions.js.rb index acf72dd..a973edc 100644 --- a/www/board/agenda/views/buttons/post-actions.js.rb +++ b/www/board/agenda/views/buttons/post-actions.js.rb @@ -4,11 +4,24 @@ class PostActions < Vue def initialize @disabled = false + @list = [] end def render _button.btn.btn_primary 'post actions', onClick: self.click, - disabled: @disabled || SelectActions.data.list.emtpy? + disabled: @disabled || @list.empty? + end + + def mounted() + EventBus.on :potential_actions, self.potential_actions + end + + def beforeDestroy() + EventBus.off :potential_actions, self.potential_actions + end + + def potential_actions(list) + @list = list end def click(event) diff --git a/www/board/agenda/views/layout/header.js.rb b/www/board/agenda/views/layout/header.js.rb index 5ba3590..7839466 100644 --- a/www/board/agenda/views/layout/header.js.rb +++ b/www/board/agenda/views/layout/header.js.rb @@ -8,6 +8,7 @@ class Header < Vue def initialize @infodropdown = nil + @clock_counter = 0 end def render @@ -18,7 +19,7 @@ class Header < Vue _PodlingNameSearch item: @@item end - _span.clock! "\u231B" if clock_counter > 0 + _span.clock! "\u231B" if @clock_counter > 0 _ul.nav.nav_pills.navbar_right do @@ -126,8 +127,20 @@ class Header < Vue end end + def beforeMount() + EventBus.on :clock_counter, self.update_counter + end + + def beforeDestroy() + EventBus.off :clock_counter, self.update_counter + end + + def update_counter(counter) + @clock_counter = counter + end + # toggle info dropdown - def toggleInfo + def toggleInfo() @infodropdown = (@infodropdown ? nil : 'open') end end diff --git a/www/board/agenda/views/pages/select-actions.rb b/www/board/agenda/views/pages/select-actions.rb index 19078e4..f16ed8b 100644 --- a/www/board/agenda/views/pages/select-actions.rb +++ b/www/board/agenda/views/pages/select-actions.rb @@ -13,11 +13,6 @@ class SelectActions < Vue @names = [] end - def created() - console.log 'created' - SelectActions.data = $data - end - def render _h3 'Post Action Items' @@ -37,6 +32,7 @@ class SelectActions < Vue if response @list = response.actions @names = response.names + EventBus.emit :potential_actions, @list end end end diff --git a/www/board/agenda/views/utils.js.rb b/www/board/agenda/views/utils.js.rb index f097e5e..f31f9d2 100644 --- a/www/board/agenda/views/utils.js.rb +++ b/www/board/agenda/views/utils.js.rb @@ -89,7 +89,7 @@ def retrieve(target, type, &block) def xhr.onreadystatechange() if xhr.readyState == 1 clock_counter += 1 - setTimeout(0) {Main.refresh()} + EventBus.emit :clock_counter, clock_counter elsif xhr.readyState == 4 data = nil @@ -120,7 +120,7 @@ def retrieve(target, type, &block) block(data) clock_counter -= 1 - Main.refresh() + EventBus.emit :clock_counter, clock_counter end end diff --git a/www/roster/views/person.js.rb b/www/roster/views/person.js.rb index 198aa7a..4d796cd 100644 --- a/www/roster/views/person.js.rb +++ b/www/roster/views/person.js.rb @@ -209,8 +209,14 @@ class Person < Vue # when a double click occurs, toggle the associated state def dblclick(event) - tr = event.currentTarget - @edit = tr.dataset.edit + row = event.currentTarget + + if row.dataset.edit == @edit + @edit = nil + else + @edit = row.dataset.edit + end + window.getSelection().removeAllRanges() end @@ -256,13 +262,8 @@ class Person < Vue @committer = response.committer if response.committer # turn off edit mode on this field - tr = form.closest('tr')[0] - if tr - field = "edit_#{tr.dataset.edit}" - changes = {} - changes[field] = false - self.setState changes - end + row = form.closest('.row')[0] + @edit = nil if row and row.dataset.edit == @edit }, error: ->(response) { -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
