diff --git a/plugins/comment_group_macro/public/comment_group_macro.js b/plugins/comment_group_macro/public/comment_group_macro.js index c7867c4..a85966d 100644 --- a/plugins/comment_group_macro/public/comment_group_macro.js +++ b/plugins/comment_group_macro/public/comment_group_macro.js @@ -19,3 +19,21 @@ jQuery(document).ready(function($) { } }); }); + +function toggleGroup(group) { + var div = jQuery('div.comments_list_toggle_group_'+group); + var visible = div.is(':visible'); + if(!visible) + jQuery('div.comment-group-loading-'+group).addClass('comment-button-loading'); + + div.toggle('fast'); + return visible; +} + +function loadCompleted(group) { + jQuery('div.comment-group-loading-'+group).removeClass('comment-button-loading') + if(comment_group_anchor) { + jQuery.scrollTo(jQuery(comment_group_anchor)); + comment_group_anchor = null; + } +} diff --git a/plugins/comment_group_macro/views/_comment_group.rhtml b/plugins/comment_group_macro/views/_comment_group.rhtml index 71ef7ed..56877c3 100644 --- a/plugins/comment_group_macro/views/_comment_group.rhtml +++ b/plugins/comment_group_macro/views/_comment_group.rhtml @@ -5,7 +5,7 @@ :url => { :profile => profile_identifier, :controller => 'comment_group_macro_plugin_profile', :action => 'view_comments', :group_id => group_id, :article_id => article_id}, :loaded => visual_effect(:highlight, "comments_list_group_#{group_id}"), :method => :post, - :condition => "!groupVisible(#{group_id})", + :condition => "!toggleGroup(#{group_id})", :complete => "loadCompleted(#{group_id})")%> @@ -27,29 +27,4 @@