From 77d859b096362a71306125d590156921e4f0a10d Mon Sep 17 00:00:00 2001 From: Ryan Seys Date: Tue, 30 Oct 2012 18:59:58 -0400 Subject: Save layout only suggested when layout changes. Closes #3 --- templates/project/assets/javascripts/application.coffee | 1 + .../project/assets/javascripts/dashing.gridster.coffee | 13 +++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'templates/project') diff --git a/templates/project/assets/javascripts/application.coffee b/templates/project/assets/javascripts/application.coffee index be030e1..a1cbf3f 100644 --- a/templates/project/assets/javascripts/application.coffee +++ b/templates/project/assets/javascripts/application.coffee @@ -22,3 +22,4 @@ Dashing.on 'ready', -> avoid_overlapped_widgets: !Dashing.customGridsterLayout draggable: stop: Dashing.showGridsterInstructions + start: -> Dashing.currentWidgetPositions = Dashing.getWidgetPositions() diff --git a/templates/project/assets/javascripts/dashing.gridster.coffee b/templates/project/assets/javascripts/dashing.gridster.coffee index 0f6f9a1..e25c561 100644 --- a/templates/project/assets/javascripts/dashing.gridster.coffee +++ b/templates/project/assets/javascripts/dashing.gridster.coffee @@ -13,20 +13,25 @@ Dashing.gridsterLayout = (positions) -> $(widget).attr('data-row', positions[index].row) $(widget).attr('data-col', positions[index].col) +Dashing.getWidgetPositions = -> + $(".gridster ul:first").gridster().data('gridster').serialize() + Dashing.showGridsterInstructions = -> - data = $(".gridster ul:first").gridster().data('gridster').serialize() + newWidgetPositions = Dashing.getWidgetPositions() + + unless JSON.stringify(newWidgetPositions) == JSON.stringify(Dashing.currentWidgetPositions) + Dashing.currentWidgetPositions = newWidgetPositions $('#save-gridster').slideDown() $('#gridster-code').text(" ") - $ -> $('#save-gridster').leanModal() $('#save-gridster').click -> - $('#save-gridster').slideUp() \ No newline at end of file + $('#save-gridster').slideUp() -- cgit v1.2.3