mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
2 lines
5.1 KiB
JavaScript
2 lines
5.1 KiB
JavaScript
define([],function(){var a=Backbone.View.extend({el_masthead:"#everything",options:null,$background:null,list:[],initialize:function(a){this.options=a,$("body").off(),this.setElement($(this._template(a))),$(this.el_masthead).append($(this.el)),this.$background=$(this.el).find("#masthead-background");var b=this;$(window).on("beforeunload",function(){var a="";for(key in b.list)if(b.list[key].options.onunload){var c=b.list[key].options.onunload();c&&(a+=c+" ")}return""!=a?a:void 0})},events:{click:"_click",mousedown:function(a){a.preventDefault()}},append:function(a){return this._add(a,!0)},prepend:function(a){return this._add(a,!1)},highlight:function(a){var b=$(this.el).find("#"+a+"> li");b&&b.addClass("active")},_add:function(a,b){var c=$(this.el).find("#"+a.location);if(c){var d=$(a.el);d.addClass("masthead-item"),b?c.append(d):c.prepend(d),this.list.push(a)}return null},_click:function(a){var b=$(this.el).find(".popup");b&&b.hide();var c=$(a.target).closest(".masthead-item").find(".popup");$(a.target).hasClass("head")?(c.show(),this.$background.show()):this.$background.hide()},_template:function(a){var b=a.brand?"/ "+a.brand:"";return'<div><div id="masthead" class="navbar navbar-fixed-top navbar-inverse"><div style="position: relative; right: -50%; float: left;"><div id="navbar" style="display: block; position: relative; right: 50%;"></div></div><div class="navbar-brand"><a href="'+a.logo_url+'"><img border="0" src="'+galaxy_config.root+'static/images/galaxyIcon_noText.png"><span id="brand"> Galaxy '+b+'</span></a></div><div class="quota-meter-container"></div><div id="iconbar" class="iconbar"></div></div><div id="masthead-background" style="display: none; position: absolute; top: 33px; width: 100%; height: 100%; z-index: 1010"></div></div>'}}),b=Backbone.View.extend({options:{id:"",icon:"fa-cog",tooltip:"",with_number:!1,onclick:function(){alert("clicked")},onunload:null,visible:!0},location:"iconbar",initialize:function(a){a&&(this.options=_.defaults(a,this.options)),this.setElement($(this._template(this.options)));var b=this;$(this.el).find(".icon").tooltip({title:this.options.tooltip,placement:"bottom"}).on("mouseup",b.options.onclick),this.options.visible||this.hide()},show:function(){$(this.el).css({visibility:"visible"})},hide:function(){$(this.el).css({visibility:"hidden"})},icon:function(a){$(this.el).find(".icon").removeClass(this.options.icon).addClass(a),this.options.icon=a},toggle:function(){$(this.el).addClass("toggle")},untoggle:function(){$(this.el).removeClass("toggle")},number:function(a){$(this.el).find(".number").text(a)},_template:function(a){var b='<div id="'+a.id+'" class="symbol"><div class="icon fa fa-2x '+a.icon+'"></div>';return a.with_number&&(b+='<div class="number"></div>'),b+="</div>"}}),c=Backbone.View.extend({options:{id:"",title:"",target:"_parent",content:"",type:"url",scratchbook:!1,onunload:null,visible:!0,disabled:!1,title_attribute:""},location:"navbar",$menu:null,events:{"click .head":"_head"},initialize:function(a){a&&(this.options=_.defaults(a,this.options)),void 0!==this.options.content&&-1===this.options.content.indexOf("//")&&(this.options.content=galaxy_config.root+this.options.content),this.setElement($(this._template(this.options))),this.options.disabled&&($(this.el).find(".root").addClass("disabled"),this._attachPopover()),this.options.visible||this.hide()},show:function(){$(this.el).css({visibility:"visible"})},hide:function(){$(this.el).css({visibility:"hidden"})},add:function(a){var b={title:"Title",content:"",type:"url",target:"_parent",scratchbook:!1,divider:!1};a&&(b=_.defaults(a,b)),b.content&&-1===b.content.indexOf("//")&&(b.content=galaxy_config.root+b.content),this.$menu||($(this.el).find(".root").append(this._templateMenu()),$(this.el).find(".symbol").addClass("caret"),this.$menu=$(this.el).find(".popup"));var c=$(this._templateMenuItem(b));this.$menu.append(c);var d=this;c.on("click",function(b){return b.preventDefault(),"_blank"===d.options.target?!0:void Galaxy.frame.add(a)}),b.divider&&this.$menu.append($(this._templateDivider()))},_head:function(a){a.preventDefault(),this.options.disabled||this.$menu||Galaxy.frame.add(this.options)},_attachPopover:function(){var a=$(this.el).find(".head");a.popover({html:!0,content:'Please <a href="'+galaxy_config.root+'user/login?use_panels=True">log in</a> or <a href="'+galaxy_config.root+'user/create?use_panels=True">register</a> to use this feature.',placement:"bottom"}).on("shown.bs.popover",function(){setTimeout(function(){a.popover("hide")},5e3)})},_templateMenuItem:function(a){return'<li><a href="'+a.content+'" target="'+a.target+'">'+a.title+"</a></li>"},_templateMenu:function(){return'<ul class="popup dropdown-menu"></ul>'},_templateDivider:function(){return'<li class="divider"></li>'},_template:function(a){var b='<ul id="'+a.id+'" class="nav navbar-nav" border="0" cellspacing="0"><li class="root dropdown" style=""><a class="head dropdown-toggle" data-toggle="dropdown" target="'+a.target+'" href="'+a.content+'" title="'+a.title_attribute+'">'+a.title+'<b class="symbol"></b></a></li></ul>';return b}});return{GalaxyMasthead:a,GalaxyMastheadTab:c,GalaxyMastheadIcon:b}});
|
|
//# sourceMappingURL=../maps/galaxy.masthead.js.map
|