summaryrefslogtreecommitdiffstats
path: root/apps/it/static/js/plugins/metisMenu/jquery.metisMenu.js
diff options
context:
space:
mode:
Diffstat (limited to 'apps/it/static/js/plugins/metisMenu/jquery.metisMenu.js')
-rwxr-xr-xapps/it/static/js/plugins/metisMenu/jquery.metisMenu.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/apps/it/static/js/plugins/metisMenu/jquery.metisMenu.js b/apps/it/static/js/plugins/metisMenu/jquery.metisMenu.js
new file mode 100755
index 0000000..36a8098
--- /dev/null
+++ b/apps/it/static/js/plugins/metisMenu/jquery.metisMenu.js
@@ -0,0 +1,45 @@
+;(function ($, window, document, undefined) {
+
+ var pluginName = "metisMenu",
+ defaults = {
+ toggle: true
+ };
+
+ function Plugin(element, options) {
+ this.element = element;
+ this.settings = $.extend({}, defaults, options);
+ this._defaults = defaults;
+ this._name = pluginName;
+ this.init();
+ }
+
+ Plugin.prototype = {
+ init: function () {
+
+ var $this = $(this.element),
+ $toggle = this.settings.toggle;
+
+ $this.find('li.active').has('ul').children('ul').addClass('collapse in');
+ $this.find('li').not('.active').has('ul').children('ul').addClass('collapse');
+
+ $this.find('li').has('ul').children('a').on('click', function (e) {
+ e.preventDefault();
+
+ $(this).parent('li').toggleClass('active').children('ul').collapse('toggle');
+
+ if ($toggle) {
+ $(this).parent('li').siblings().removeClass('active').children('ul.in').collapse('hide');
+ }
+ });
+ }
+ };
+
+ $.fn[ pluginName ] = function (options) {
+ return this.each(function () {
+ if (!$.data(this, "plugin_" + pluginName)) {
+ $.data(this, "plugin_" + pluginName, new Plugin(this, options));
+ }
+ });
+ };
+
+})(jQuery, window, document);