http://www.mediawiki.org/wiki/Special:Code/MediaWiki/89943
Revision: 89943 Author: yaron Date: 2011-06-13 02:38:46 +0000 (Mon, 13 Jun 2011) Log Message: ----------- New JS, CSS and PNG files for 'collapsible fieldset' functionality, currently used only in Special:CreateForm Added Paths: ----------- trunk/extensions/SemanticForms/libs/SF_collapsible.js trunk/extensions/SemanticForms/skins/SF_collapsible.css trunk/extensions/SemanticForms/skins/collapse-minus.png trunk/extensions/SemanticForms/skins/collapse-plus.png Added: trunk/extensions/SemanticForms/libs/SF_collapsible.js =================================================================== --- trunk/extensions/SemanticForms/libs/SF_collapsible.js (rev 0) +++ trunk/extensions/SemanticForms/libs/SF_collapsible.js 2011-06-13 02:38:46 UTC (rev 89943) @@ -0,0 +1,55 @@ +/** + * SF_collapsible.js + * + * Allows for collapsible fieldsets. + * + * Based on the 'coolfieldset' jQuery plugin: + * http://w3shaman.com/article/jquery-plugin-collapsible-fieldset + */ + +function sfHideFieldsetContent(obj, options){ + obj.find('div').slideUp(options.speed); + obj.removeClass("sfExpandedFieldset"); + obj.addClass("sfCollapsedFieldset"); +} + +function sfShowFieldsetContent(obj, options){ + obj.find('div').slideDown(options.speed); + obj.removeClass("sfCollapsedFieldset"); + obj.addClass("sfExpandedFieldset"); +} + +jQuery.fn.sfMakeCollapsible = function(options){ + var setting = { collapsed: true, speed: 'medium' }; + jQuery.extend(setting, options); + + this.each(function(){ + var fieldset = jQuery(this); + var legend = fieldset.children('legend'); + if ( setting.collapsed == true ) { + legend.toggle( + function(){ + sfShowFieldsetContent(fieldset, setting); + }, + function(){ + sfHideFieldsetContent(fieldset, setting); + } + ) + + sfHideFieldsetContent(fieldset, {animation:false}); + } else { + legend.toggle( + function(){ + sfHideFieldsetContent(fieldset, setting); + }, + function(){ + sfShowFieldsetContent(fieldset, setting); + } + ) + } + }); +} + +jQuery(document).ready(function() { + jQuery('.sfCollapsibleFieldset').sfMakeCollapsible(); +}); Added: trunk/extensions/SemanticForms/skins/SF_collapsible.css =================================================================== --- trunk/extensions/SemanticForms/skins/SF_collapsible.css (rev 0) +++ trunk/extensions/SemanticForms/skins/SF_collapsible.css 2011-06-13 02:38:46 UTC (rev 89943) @@ -0,0 +1,12 @@ +.sfCollapsibleFieldset legend { + cursor: pointer; + padding-left: 20px; +} + +.sfCollapsedFieldset legend { + background: transparent url(collapse-plus.png) no-repeat center left; +} + +.sfExpandedFieldset legend { + background: transparent url(collapse-minus.png) no-repeat center left; +} Added: trunk/extensions/SemanticForms/skins/collapse-minus.png =================================================================== (Binary files differ) Property changes on: trunk/extensions/SemanticForms/skins/collapse-minus.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/extensions/SemanticForms/skins/collapse-plus.png =================================================================== (Binary files differ) Property changes on: trunk/extensions/SemanticForms/skins/collapse-plus.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs