diff --git a/client/galaxy/scripts/layout/menu.js b/client/galaxy/scripts/layout/menu.js index 60ed75102db..e2d27ffc423 100644 --- a/client/galaxy/scripts/layout/menu.js +++ b/client/galaxy/scripts/layout/menu.js @@ -236,23 +236,10 @@ var Collection = Backbone.Collection.extend({ title : 'Logged in as ' + Galaxy.user.get( 'email' ) }, { - title : 'Preferences Mako', + title : 'User Preferences', url : 'user?cntrller=user', target : 'galaxy_main' }, - { - title : 'New Preferences', - url : 'user', - onclick : function() { - if (Galaxy.app) { - Galaxy.app.display(new Preferences.UserPreferences()); - } - else { - window.location = Galaxy.root + "user"; - } - } - }, - { title : 'Custom Builds', url : 'user/dbkeys', @@ -280,6 +267,22 @@ var Collection = Backbone.Collection.extend({ target : 'galaxy_main' }] }; + + if( window.Galaxy.config.enable_new_preferences ) { + userTab.menu.push({ + title : 'New User Preferences UI', + url : 'user', + onclick : function() { + if (Galaxy.app) { + Galaxy.app.display(new Preferences.UserPreferences()); + } + else { + window.location = Galaxy.root + "user"; + } + } + }); + } + options.use_remote_user && userTab.menu.push({ title : 'Public Name', url : 'user/edit_username?cntrller=user', diff --git a/client/galaxy/scripts/layout/page.js b/client/galaxy/scripts/layout/page.js index c84251ccde0..8b8568c5c02 100644 --- a/client/galaxy/scripts/layout/page.js +++ b/client/galaxy/scripts/layout/page.js @@ -138,10 +138,9 @@ var PageLayoutView = Backbone.View.extend( BaseMVC.LoggableMixin ).extend({ _checkCommunicationServerOnline: function(){ var host = window.Galaxy.config.communication_server_host, port = window.Galaxy.config.communication_server_port, - $chat_icon_element = $( "#show-chat-online" ), - communication_server = window.Galaxy.user.attributes.preferences.communication_server; + $chat_icon_element = $( "#show-chat-online" ); /** Check if the user has deactivated the communication in it's personal settings */ - if ( window.Galaxy.user.attributes.preferences !== undefined && ( communication_server === '1' || communication_server === 'true' ) ) { + if ( window.Galaxy.user.attributes.preferences !== undefined && ( window.Galaxy.user.attributes.preferences.communication_server === '1' || window.Galaxy.user.attributes.preferences.communication_server === 'true' ) ) { // See if the configured communication server is available $.ajax({ url: host + ":" + port, diff --git a/client/galaxy/scripts/mvc/user/user-preferences.js b/client/galaxy/scripts/mvc/user/user-preferences.js index 4c49f983fd5..c32bdb139d4 100644 --- a/client/galaxy/scripts/mvc/user/user-preferences.js +++ b/client/galaxy/scripts/mvc/user/user-preferences.js @@ -188,4 +188,4 @@ define( [ 'mvc/form/form-view', 'mvc/ui/ui-misc' ], function( Form, Ui ) { return { UserPreferences: UserPreferences }; -}); \ No newline at end of file +}); diff --git a/config/galaxy.ini.sample b/config/galaxy.ini.sample index 9d5dc4050a9..0e864e13a11 100644 --- a/config/galaxy.ini.sample +++ b/config/galaxy.ini.sample @@ -125,11 +125,6 @@ paste.app_factory = galaxy.web.buildapp:app_factory # but prefixed with install_ are also available). #install_database_connection = sqlite:///./database/universe.sqlite?isolation_level=IMMEDIATE -# Setting the following option to true will cause Galaxy to automatically -# migrate the database forward after updates. This is not recommended for production -# use. -#database_auto_migrate = False - # -- Files and directories # Dataset files are stored in this directory. @@ -169,47 +164,39 @@ paste.app_factory = galaxy.web.buildapp:app_factory # tag. #tool_path = tools -# -- Tool dependencies - # Path to the directory in which tool dependencies are placed. This is used by -# the Tool Shed to install dependencies and can also be used by administrators +# the tool shed to install dependencies and can also be used by administrators # to manually install or link to dependencies. For details, see: # https://wiki.galaxyproject.org/Admin/Config/ToolDependencies -# Set the string to None to explicitly disable tool dependency handling. +# Set to the string none to explicitly disable tool dependency handling. # If this option is set to none or an invalid path, installing tools with dependencies -# from the Tool Shed will fail. +# from the Tool Shed will fail. #tool_dependency_dir = database/dependencies -# The dependency resolvers config file specifies an ordering and options for how +# The dependency resolves config file specifies an ordering and options for how # Galaxy resolves tool dependencies (requirement tags in Tool XML). The default -# ordering is to the use the Tool Shed for tools installed that way, use local -# Galaxy packages, and then use Conda if available. +# ordering is to the use the tool shed for tools installed that way, use local +# Galaxy packages, and then use conda if available. # See https://github.com/galaxyproject/galaxy/blob/dev/doc/source/admin/dependency_resolvers.rst # for more information on these options. #dependency_resolvers_config_file = config/dependency_resolvers_conf.xml -# The following Conda dependency resolution options will change the defaults for -# all Conda resolvers, but multiple resolvers can be configured independently -# in dependency_resolvers_config_file and these options overridden. -# Location on the filesystem where Conda packages are installed - -# conda_prefix is the location on the filesystem where Conda packages and environments are installed -# IMPORTANT: Due to a current limitation in conda, the total length of the -# conda_prefix and the job_working_directory path should be less than 50 characters! +# Following conda dependeny resolution options are experimental as of early +# 2016. These will change the defaults for each conda resolver, but multiple +# resolvers can be configured independently and these options overridden in +# dependency_resolvers_config_file. #conda_prefix = /_conda -# Override the Conda executable to use, it will default to the one on the +# Override the conda executable to use, it will default to the one on the # PATH (if available) and then to /bin/conda #conda_exec = # Pass debug flag to conda commands. #conda_debug = False # conda channels to enable by default (http://conda.pydata.org/docs/custom-channels.html) -#conda_ensure_channels = conda-forge,r,bioconda,iuc +#conda_ensure_channels = r,bioconda,iuc # Set to True to instruct Galaxy to look for and install missing tool # dependencies before each job runs. #conda_auto_install = False -# Set to True to perform additional checking of installed Conda environment -#conda_verbose_install_check=False -# Set to True to instruct Galaxy to install Conda from the web automatically +# Set to True to instruct Galaxy to install conda from the web automatically # if it cannot find a local copy and conda_exec is not configured. #conda_auto_init = False @@ -228,31 +215,6 @@ paste.app_factory = galaxy.web.buildapp:app_factory # than the watchdog default. #watch_tools = False -# Enable Galaxy to fetch Docker containers registered with quay.io generated -# from tool requirements resolved through conda. These containers (when -# available) have been generated using mulled - https://github.com/mulled. -# These containers are highly beta and availablity will vary by tool. -# This option will additionally only be used for job destinations with -# Docker enabled. -#enable_beta_mulled_containers = False - -# Container resolvers configuration (beta). Setup a file describing container -# resolvers to use when discovering containers for Galaxy. If this is set to -# None, the default containers loaded is determined by -# enable_beta_mulled_containers. -#containers_resolvers_config_file = None - -# involucro is a tool used to build Docker containers for tools from Conda -# dependencies referenced in tools as `requirement`s. The following path is -# the location of involucro on the Galaxy host. This is ignored if the relevant -# container resolver isn't enabled, and will install on demand unless -# involucro_auto_init is set to False. -#involucro_path = database/dependencies/involucro - -# Install involucro as needed to build Docker containers for tools. Ignored if -# relevant container resolver is not used. -#involucro_auto_init = True - # Enable automatic polling of relative tool sheds to see if any updates # are available for installed repositories. Ideally only one Galaxy # server process should be able to check for repository updates. The @@ -324,12 +286,6 @@ paste.app_factory = galaxy.web.buildapp:app_factory # separated list. #tour_config_dir = config/plugins/tours -# Webhooks directory: where to store webhooks - plugins to extend the Galaxy UI. -# By default none will be loaded. Set to config/plugins/webhooks/demo to load Galaxy's -# demo webhooks. To use an absolute path begin the path with '/'. This is a comma -# separated list. -# webhooks_dir = config/plugins/webhooks - # Each job is given a unique empty directory as its current working directory. # This option defines in what parent directory those directories will be # created. @@ -351,6 +307,7 @@ paste.app_factory = galaxy.web.buildapp:app_factory # Time to sleep between checks if check_job_script_integrity is enabled (in seconds). #check_job_script_integrity_sleep = .25 + # Set the default shell used by non-containerized jobs Galaxy-wide. This # defaults to bash for all jobs and can be overidden at the destination # level for heterogenous clusters. conda job resolution requires bash or zsh @@ -452,19 +409,16 @@ paste.app_factory = galaxy.web.buildapp:app_factory # Activation grace period (in hours). Activation is not forced (login is not # disabled) until grace period has passed. Users under grace period can't run -# jobs. Enter 0 to disable grace period. +# jobs (see inactivity_box_content). Default is 3. Enter 0 to disable grace +# period. # Users with OpenID logins have grace period forever. -#activation_grace_period = 3 +#activation_grace_period = 0 -# Shown in warning box to users that were not activated yet. +# Used for warning box for inactive accounts (unable to run jobs). # In use only if activation_grace_period is set. #inactivity_box_content = Your account has not been activated yet. Feel free to browse around and see what's available, but you won't be able to upload data or run jobs until you have verified your email address. -# Password expiration period (in days). Users are required to change their -# password every x days. Users will be redirected to the change password -# screen when they log in after their password expires. Enter 0 to disable -# password expiration. -#password_expiration_period = 0 + # Galaxy Session Timeout # This provides a timeout (in minutes) after which a user will have to log back in. @@ -564,13 +518,13 @@ nglims_config_file = tool-data/nglims.yaml # The URL linked by the "How to Cite Galaxy" link in the "Help" menu. #citation_url = https://wiki.galaxyproject.org/CitingGalaxy -# The URL linked by the "Search" link in the "Help" menu. +#The URL linked by the "Search" link in the "Help" menu. #search_url = http://galaxyproject.org/search/usegalaxy/ -# The URL linked by the "Mailing Lists" link in the "Help" menu. +#The URL linked by the "Mailing Lists" link in the "Help" menu. #mailing_lists_url = https://wiki.galaxyproject.org/MailingLists -# The URL linked by the "Videos" link in the "Help" menu. +#The URL linked by the "Videos" link in the "Help" menu. #screencasts_url = https://vimeo.com/galaxyproject # The URL linked by the "Terms and Conditions" link in the "Help" menu, as well @@ -662,7 +616,7 @@ nglims_config_file = tool-data/nglims.yaml # implementation, alongside a new Golang single-binary-no-dependencies # version. Valid values are (node, golang) #dynamic_proxy=node - +# # The NodeJS dynamic proxy can use an SQLite database or a JSON file for IPC, # set that here. #dynamic_proxy_session_map=database/session_map.sqlite @@ -732,6 +686,7 @@ nglims_config_file = tool-data/nglims.yaml # log_events and log_actions functionality will eventually be merged. #log_actions = True + # Fluentd configuration. Various events can be logged to the fluentd instance # configured below by enabling fluent_log. #fluent_log = False @@ -892,10 +847,11 @@ use_interactive = True # Galaxy encodes various internal values when these values will be output in # some format (for example, in a URL or cookie). You should set a key to be # used by the algorithm that encodes and decodes these values. It can be any -# string. +# string. If left unchanged, anyone could construct a cookie that would grant +# them access to others' sessions. # One simple way to generate a value for this is with the shell command: # python -c 'import time; print time.time()' | md5sum | cut -f 1 -d ' ' -#id_secret = USING THE DEFAULT IS NOT SECURE! +id_secret = passwordabc # User authentication can be delegated to an upstream proxy server (usually # Apache). The upstream proxy should set a REMOTE_USER header in the request. @@ -966,7 +922,7 @@ use_interactive = True # Allow users to remove their datasets from disk immediately (otherwise, # datasets will be removed after a time period specified by an administrator in # the cleanup scripts run via cron) -#allow_user_dataset_purge = True +#allow_user_dataset_purge = False # By default, users' data will be public, but setting this to True will cause # it to be private. Does not affect existing users and data, only ones created @@ -984,17 +940,23 @@ use_interactive = True #expose_user_email = False # -- Beta features - # Enable new run workflow form -#run_workflow_toolform_upgrade = True +#run_workflow_toolform_upgrade = False # Enable Galaxy to communicate directly with a sequencer #enable_sequencer_communication = False +# Separate tool command from rest of job script so tool dependencies +# don't interfer with metadata generation. +# Despite the name, this feature is enabled by default +# in 16.01 and the option will go away in the future. +#enable_beta_tool_command_isolation = True + # Enable the new interface for installing tools from Tool Shed # via the API. Admin menu will list both if enabled. #enable_beta_ts_api_install = False + # Set the following to a number of threads greater than 1 to spawn # a Python task queue for dealing with large tool submissions (either # through the tool form or as part of an individual workflow step across @@ -1206,14 +1168,14 @@ use_interactive = True # if running many handlers. #cache_user_job_count = False -# -- ToolBox filtering +# ToolBox filtering # Modules from lib/galaxy/tools/toolbox/filters/ can be specified in # the following lines. tool_* filters will be applied for all users # and can not be changed by them. user_tool_* filters will be shown -# under user preferences and can be toggled on and off at +# under user preferences and can be toogled on and off by # runtime. Example shown below are not real defaults (no custom -# filters are applied by default), but can be enabled by renaming the +# filters applied by defualt) but can be enabled with by renaming the # example.py.sample in the filters directory to example.py. #tool_filters = @@ -1228,7 +1190,7 @@ use_interactive = True # modifying the following option. #toolbox_filter_base_modules = galaxy.tools.toolbox.filters,galaxy.tools.filters -# -- Galaxy Application Internal Message Queue +# Galaxy Application Internal Message Queue # Galaxy uses AMQP internally TODO more documentation on what for. # For examples, see http://ask.github.io/kombu/userguide/connections.html @@ -1244,9 +1206,11 @@ use_interactive = True #enable_communication_server = False #communication_server_host = http://localhost #communication_server_port = 7070 -# persistent_communication_rooms is a comma-separated list of rooms that should be always available. -#persistent_communication_rooms = +#persistent_communication_rooms is a comma-separated list of rooms that should be always be available. +#persistent_communication_rooms = RNA-seq, Room 1, Room ABC +# Enable new preferences which showcases new UI for the user preferences +enable_new_preferences = False # ---- Galaxy External Message Queue ------------------------------------------------- @@ -1268,3 +1232,4 @@ use_interactive = True #exchange = galaxy_exchange #routing_key = bar_code_scanner #rabbitmqctl_path = /path/to/rabbitmqctl + diff --git a/lib/galaxy/config.py b/lib/galaxy/config.py index 8bb46c546d7..efe24a14b92 100644 --- a/lib/galaxy/config.py +++ b/lib/galaxy/config.py @@ -220,6 +220,7 @@ class Configuration( object ): self.communication_server_host = kwargs.get( 'communication_server_host', 'http://localhost' ) self.communication_server_port = int( kwargs.get( 'communication_server_port', '7070' ) ) self.persistent_communication_rooms = listify( kwargs.get( "persistent_communication_rooms", [] ), do_strip=True ) + self.enable_new_preferences = string_as_bool( kwargs.get( 'enable_new_preferences', 'False' ) ) # External Service types used in sample tracking self.external_service_type_path = resolve_path( kwargs.get( 'external_service_type_path', 'external_service_types' ), self.root ) # Tasked job runner. diff --git a/lib/galaxy/managers/configuration.py b/lib/galaxy/managers/configuration.py index b5bacc890b7..22aa4c5c0b4 100644 --- a/lib/galaxy/managers/configuration.py +++ b/lib/galaxy/managers/configuration.py @@ -56,6 +56,7 @@ class ConfigSerializer( base.ModelSerializer ): 'communication_server_host' : _defaults_to( None ), 'communication_server_port' : _defaults_to( None ), 'persistent_communication_rooms' : _defaults_to( None ), + 'enable_new_preferences' : _defaults_to( False ), 'allow_user_creation' : _defaults_to( False ), 'use_remote_user' : _defaults_to( None ), 'remote_user_logout_href' : _defaults_to( '' ), diff --git a/static/maps/layout/menu.js.map b/static/maps/layout/menu.js.map index 00549f70685..bff46180d2e 100644 --- a/static/maps/layout/menu.js.map +++ b/static/maps/layout/menu.js.map @@ -1 +1 @@ -{"version":3,"file":"menu.js","sources":["../../src/layout/menu.js"],"names":["define","Tours","GenericNav","Preferences","Webhooks","Collection","Backbone","extend","model","Model","defaults","visible","target","fetch","options","this","reset","extendedNavItem","GenericNavView","add","render","id","title","url","tooltip","disabled","Galaxy","user","menu","user_requests","lims_doc_url","callback","webhooks","$","document","ready","each","models","index","webhook","toJSON","activate","page","masthead","collection","name","icon","config","onclick","function","Function","get","cls","helpTab","support_url","search_url","mailing_lists","screencasts_url","wiki_url","citation_url","app","display","ToursView","window","location","root","terms_url","push","biostar_url","unshift","biostar_url_redirect","userTab","UserPreferences","divider","use_remote_user","noscratchbook","allow_user_creation","activeView","active_view","set","jQuery","Deferred","resolve","promise","Tab","View","initialize","setElement","_template","$dropdown","$toggle","$menu","$note","listenTo","events","click .dropdown-toggle","self","remove","$el","attr","css","visibility","_formatUrl","html","removeClass","addClass","placement","show","off","on","hide","empty","_","menuItem","append","_buildMenuItem","e","preventDefault","frame","_toggleClick","buildLink","label","trigger","m","popover","content","setTimeout","attributes","indexOf","charAt"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"menu.js","sources":["../../src/layout/menu.js"],"names":["define","Tours","GenericNav","Preferences","Webhooks","Collection","Backbone","extend","model","Model","defaults","visible","target","fetch","options","this","reset","extendedNavItem","GenericNavView","add","render","id","title","url","tooltip","disabled","Galaxy","user","menu","user_requests","lims_doc_url","callback","webhooks","$","document","ready","each","models","index","webhook","toJSON","activate","page","masthead","collection","name","icon","config","onclick","function","Function","get","cls","helpTab","support_url","search_url","mailing_lists","screencasts_url","wiki_url","citation_url","app","display","ToursView","window","location","root","terms_url","push","biostar_url","unshift","biostar_url_redirect","userTab","divider","enable_new_preferences","UserPreferences","use_remote_user","noscratchbook","allow_user_creation","activeView","active_view","set","jQuery","Deferred","resolve","promise","Tab","View","initialize","setElement","_template","$dropdown","$toggle","$menu","$note","listenTo","events","click .dropdown-toggle","self","remove","$el","attr","css","visibility","_formatUrl","html","removeClass","addClass","placement","show","off","on","hide","empty","_","menuItem","append","_buildMenuItem","e","preventDefault","frame","_toggleClick","buildLink","label","trigger","m","popover","content","setTimeout","attributes","indexOf","charAt"],"mappings":"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"} \ No newline at end of file diff --git a/static/maps/layout/page.js.map b/static/maps/layout/page.js.map index 1883b0eea88..bc6824dda88 100644 --- a/static/maps/layout/page.js.map +++ b/static/maps/layout/page.js.map @@ -1 +1 @@ -{"version":3,"file":"page.js","sources":["../../src/layout/page.js"],"names":["define","Masthead","Panel","Modal","BaseMVC","PageLayoutView","Backbone","View","extend","LoggableMixin","_logNamespace","el","className","_panelIds","defaultOptions","message_box_visible","message_box_content","message_box_class","show_inactivity_warning","inactivity_box_content","initialize","options","this","log","_","pick","defaults","omit","config","Galaxy","modal","masthead","$el","attr","html","_template","append","frame","$","replaceWith","$messagebox","$inactivebox","render","remove","renderMessageBox","renderInactivityBox","renderPanels","_checkCommunicationServerOnline","content","level","addClass","toggle","show","removeClass","hide","verificationLink","root","text","page","forEach","panelId","has","setElement","left","center","css","right","join","hideSidePanels","toString","host","window","communication_server_host","port","communication_server_port","$chat_icon_element","communication_server","user","attributes","preferences","undefined","ajax","url","success","id","error"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"page.js","sources":["../../src/layout/page.js"],"names":["define","Masthead","Panel","Modal","BaseMVC","PageLayoutView","Backbone","View","extend","LoggableMixin","_logNamespace","el","className","_panelIds","defaultOptions","message_box_visible","message_box_content","message_box_class","show_inactivity_warning","inactivity_box_content","initialize","options","this","log","_","pick","defaults","omit","config","Galaxy","modal","masthead","$el","attr","html","_template","append","frame","$","replaceWith","$messagebox","$inactivebox","render","remove","renderMessageBox","renderInactivityBox","renderPanels","_checkCommunicationServerOnline","content","level","addClass","toggle","show","removeClass","hide","verificationLink","root","text","page","forEach","panelId","has","setElement","left","center","css","right","join","hideSidePanels","toString","host","window","communication_server_host","port","communication_server_port","$chat_icon_element","undefined","user","attributes","preferences","communication_server","ajax","url","success","id","error"],"mappings":"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"} \ No newline at end of file diff --git a/static/scripts/bundled/libs.bundled.js b/static/scripts/bundled/libs.bundled.js index 5f75b5954c6..787016f8e66 100644 --- a/static/scripts/bundled/libs.bundled.js +++ b/static/scripts/bundled/libs.bundled.js @@ -26,7 +26,7 @@ vt.event={global:{},add:function(t,e,i,n,s){var o,r,a,l,h,c,u,d,p,f,g,m=vt._data })},hasClass:function(t){var e,i,n=0;for(e=" "+t+" ";i=this[n++];)if(1===i.nodeType&&(" "+X(i)+" ").replace(We," ").indexOf(e)>-1)return!0;return!1}}),vt.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(t,e){vt.fn[e]=function(t,i){return arguments.length>0?this.on(e,null,t,i):this.trigger(e)}}),vt.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)}});var Be=i.location,Ve=vt.now(),Ue=/\?/,Ge=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;vt.parseJSON=function(t){if(i.JSON&&i.JSON.parse)return i.JSON.parse(t+"");var e,n=null,s=vt.trim(t+"");return s&&!vt.trim(s.replace(Ge,function(t,i,s,o){return e&&i&&(n=0),0===n?t:(e=s||i,n+=!o-!s,"")}))?Function("return "+s)():vt.error("Invalid JSON: "+t)},vt.parseXML=function(t){var e,n;if(!t||"string"!=typeof t)return null;try{i.DOMParser?(n=new i.DOMParser,e=n.parseFromString(t,"text/xml")):(e=new i.ActiveXObject("Microsoft.XMLDOM"),e.async="false",e.loadXML(t))}catch(t){e=void 0}return e&&e.documentElement&&!e.getElementsByTagName("parsererror").length||vt.error("Invalid XML: "+t),e};var Xe=/#.*$/,Ye=/([?&])_=[^&]*/,Je=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Ke=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Qe=/^(?:GET|HEAD)$/,Ze=/^\/\//,ti=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,ei={},ii={},ni="*/".concat("*"),si=Be.href,oi=ti.exec(si.toLowerCase())||[];vt.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:si,type:"GET",isLocal:Ke.test(oi[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":ni,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":vt.parseJSON,"text xml":vt.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?K(K(t,vt.ajaxSettings),e):K(vt.ajaxSettings,t)},ajaxPrefilter:Y(ei),ajaxTransport:Y(ii),ajax:function(t,e){function n(t,e,n,s){var o,u,y,b,w,C=e;2!==_&&(_=2,l&&i.clearTimeout(l),c=void 0,a=s||"",x.readyState=t>0?4:0,o=t>=200&&t<300||304===t,n&&(b=Q(d,x,n)),b=Z(d,b,x,o),o?(d.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(vt.lastModified[r]=w),w=x.getResponseHeader("etag"),w&&(vt.etag[r]=w)),204===t||"HEAD"===d.type?C="nocontent":304===t?C="notmodified":(C=b.state,u=b.data,y=b.error,o=!y)):(y=C,!t&&C||(C="error",t<0&&(t=0))),x.status=t,x.statusText=(e||C)+"",o?g.resolveWith(p,[u,C,x]):g.rejectWith(p,[x,C,y]),x.statusCode(v),v=void 0,h&&f.trigger(o?"ajaxSuccess":"ajaxError",[x,d,o?u:y]),m.fireWith(p,[x,C]),h&&(f.trigger("ajaxComplete",[x,d]),--vt.active||vt.event.trigger("ajaxStop")))}"object"==typeof t&&(e=t,t=void 0),e=e||{};var s,o,r,a,l,h,c,u,d=vt.ajaxSetup({},e),p=d.context||d,f=d.context&&(p.nodeType||p.jquery)?vt(p):vt.event,g=vt.Deferred(),m=vt.Callbacks("once memory"),v=d.statusCode||{},y={},b={},_=0,w="canceled",x={readyState:0,getResponseHeader:function(t){var e;if(2===_){if(!u)for(u={};e=Je.exec(a);)u[e[1].toLowerCase()]=e[2];e=u[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return 2===_?a:null},setRequestHeader:function(t,e){var i=t.toLowerCase();return _||(t=b[i]=b[i]||t,y[t]=e),this},overrideMimeType:function(t){return _||(d.mimeType=t),this},statusCode:function(t){var e;if(t)if(_<2)for(e in t)v[e]=[v[e],t[e]];else x.always(t[x.status]);return this},abort:function(t){var e=t||w;return c&&c.abort(e),n(0,e),this}};if(g.promise(x).complete=m.add,x.success=x.done,x.error=x.fail,d.url=((t||d.url||si)+"").replace(Xe,"").replace(Ze,oi[1]+"//"),d.type=e.method||e.type||d.method||d.type,d.dataTypes=vt.trim(d.dataType||"*").toLowerCase().match(Dt)||[""],null==d.crossDomain&&(s=ti.exec(d.url.toLowerCase()),d.crossDomain=!(!s||s[1]===oi[1]&&s[2]===oi[2]&&(s[3]||("http:"===s[1]?"80":"443"))===(oi[3]||("http:"===oi[1]?"80":"443")))),d.data&&d.processData&&"string"!=typeof d.data&&(d.data=vt.param(d.data,d.traditional)),J(ei,d,e,x),2===_)return x;h=vt.event&&d.global,h&&0===vt.active++&&vt.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!Qe.test(d.type),r=d.url,d.hasContent||(d.data&&(r=d.url+=(Ue.test(r)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=Ye.test(r)?r.replace(Ye,"$1_="+Ve++):r+(Ue.test(r)?"&":"?")+"_="+Ve++)),d.ifModified&&(vt.lastModified[r]&&x.setRequestHeader("If-Modified-Since",vt.lastModified[r]),vt.etag[r]&&x.setRequestHeader("If-None-Match",vt.etag[r])),(d.data&&d.hasContent&&d.contentType!==!1||e.contentType)&&x.setRequestHeader("Content-Type",d.contentType),x.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+ni+"; q=0.01":""):d.accepts["*"]);for(o in d.headers)x.setRequestHeader(o,d.headers[o]);if(d.beforeSend&&(d.beforeSend.call(p,x,d)===!1||2===_))return x.abort();w="abort";for(o in{success:1,error:1,complete:1})x[o](d[o]);if(c=J(ii,d,e,x)){if(x.readyState=1,h&&f.trigger("ajaxSend",[x,d]),2===_)return x;d.async&&d.timeout>0&&(l=i.setTimeout(function(){x.abort("timeout")},d.timeout));try{_=1,c.send(y,n)}catch(t){if(!(_<2))throw t;n(-1,t)}}else n(-1,"No Transport");return x},getJSON:function(t,e,i){return vt.get(t,e,i,"json")},getScript:function(t,e){return vt.get(t,void 0,e,"script")}}),vt.each(["get","post"],function(t,e){vt[e]=function(t,i,n,s){return vt.isFunction(i)&&(s=s||n,n=i,i=void 0),vt.ajax(vt.extend({url:t,type:e,dataType:s,data:i,success:n},vt.isPlainObject(t)&&t))}}),vt._evalUrl=function(t){return vt.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},vt.fn.extend({wrapAll:function(t){if(vt.isFunction(t))return this.each(function(e){vt(this).wrapAll(t.call(this,e))});if(this[0]){var e=vt(t,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&e.insertBefore(this[0]),e.map(function(){for(var t=this;t.firstChild&&1===t.firstChild.nodeType;)t=t.firstChild;return t}).append(this)}return this},wrapInner:function(t){return vt.isFunction(t)?this.each(function(e){vt(this).wrapInner(t.call(this,e))}):this.each(function(){var e=vt(this),i=e.contents();i.length?i.wrapAll(t):e.append(t)})},wrap:function(t){var e=vt.isFunction(t);return this.each(function(i){vt(this).wrapAll(e?t.call(this,i):t)})},unwrap:function(){return this.parent().each(function(){vt.nodeName(this,"body")||vt(this).replaceWith(this.childNodes)}).end()}}),vt.expr.filters.hidden=function(t){return gt.reliableHiddenOffsets()?t.offsetWidth<=0&&t.offsetHeight<=0&&!t.getClientRects().length:et(t)},vt.expr.filters.visible=function(t){return!vt.expr.filters.hidden(t)};var ri=/%20/g,ai=/\[\]$/,li=/\r?\n/g,hi=/^(?:submit|button|image|reset|file)$/i,ci=/^(?:input|select|textarea|keygen)/i;vt.param=function(t,e){var i,n=[],s=function(t,e){e=vt.isFunction(e)?e():null==e?"":e,n[n.length]=encodeURIComponent(t)+"="+encodeURIComponent(e)};if(void 0===e&&(e=vt.ajaxSettings&&vt.ajaxSettings.traditional),vt.isArray(t)||t.jquery&&!vt.isPlainObject(t))vt.each(t,function(){s(this.name,this.value)});else for(i in t)it(i,t[i],e,s);return n.join("&").replace(ri,"+")},vt.fn.extend({serialize:function(){return vt.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=vt.prop(this,"elements");return t?vt.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!vt(this).is(":disabled")&&ci.test(this.nodeName)&&!hi.test(t)&&(this.checked||!Bt.test(t))}).map(function(t,e){var i=vt(this).val();return null==i?null:vt.isArray(i)?vt.map(i,function(t){return{name:e.name,value:t.replace(li,"\r\n")}}):{name:e.name,value:i.replace(li,"\r\n")}}).get()}}),vt.ajaxSettings.xhr=void 0!==i.ActiveXObject?function(){return this.isLocal?st():at.documentMode>8?nt():/^(get|post|head|put|delete|options)$/i.test(this.type)&&nt()||st()}:nt;var ui=0,di={},pi=vt.ajaxSettings.xhr();i.attachEvent&&i.attachEvent("onunload",function(){for(var t in di)di[t](void 0,!0)}),gt.cors=!!pi&&"withCredentials"in pi,pi=gt.ajax=!!pi,pi&&vt.ajaxTransport(function(t){if(!t.crossDomain||gt.cors){var e;return{send:function(n,s){var o,r=t.xhr(),a=++ui;if(r.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(o in t.xhrFields)r[o]=t.xhrFields[o];t.mimeType&&r.overrideMimeType&&r.overrideMimeType(t.mimeType),t.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest");for(o in n)void 0!==n[o]&&r.setRequestHeader(o,n[o]+"");r.send(t.hasContent&&t.data||null),e=function(i,n){var o,l,h;if(e&&(n||4===r.readyState))if(delete di[a],e=void 0,r.onreadystatechange=vt.noop,n)4!==r.readyState&&r.abort();else{h={},o=r.status,"string"==typeof r.responseText&&(h.text=r.responseText);try{l=r.statusText}catch(t){l=""}o||!t.isLocal||t.crossDomain?1223===o&&(o=204):o=h.text?200:404}h&&s(o,l,h,r.getAllResponseHeaders())},t.async?4===r.readyState?i.setTimeout(e):r.onreadystatechange=di[a]=e:e()},abort:function(){e&&e(void 0,!0)}}}}),vt.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return vt.globalEval(t),t}}}),vt.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET",t.global=!1)}),vt.ajaxTransport("script",function(t){if(t.crossDomain){var e,i=at.head||vt("head")[0]||at.documentElement;return{send:function(n,s){e=at.createElement("script"),e.async=!0,t.scriptCharset&&(e.charset=t.scriptCharset),e.src=t.url,e.onload=e.onreadystatechange=function(t,i){(i||!e.readyState||/loaded|complete/.test(e.readyState))&&(e.onload=e.onreadystatechange=null,e.parentNode&&e.parentNode.removeChild(e),e=null,i||s(200,"success"))},i.insertBefore(e,i.firstChild)},abort:function(){e&&e.onload(void 0,!0)}}}});var fi=[],gi=/(=)\?(?=&|$)|\?\?/;vt.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=fi.pop()||vt.expando+"_"+Ve++;return this[t]=!0,t}}),vt.ajaxPrefilter("json jsonp",function(t,e,n){var s,o,r,a=t.jsonp!==!1&&(gi.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&gi.test(t.data)&&"data");if(a||"jsonp"===t.dataTypes[0])return s=t.jsonpCallback=vt.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,a?t[a]=t[a].replace(gi,"$1"+s):t.jsonp!==!1&&(t.url+=(Ue.test(t.url)?"&":"?")+t.jsonp+"="+s),t.converters["script json"]=function(){return r||vt.error(s+" was not called"),r[0]},t.dataTypes[0]="json",o=i[s],i[s]=function(){r=arguments},n.always(function(){void 0===o?vt(i).removeProp(s):i[s]=o,t[s]&&(t.jsonpCallback=e.jsonpCallback,fi.push(s)),r&&vt.isFunction(o)&&o(r[0]),r=o=void 0}),"script"}),vt.parseHTML=function(t,e,i){if(!t||"string"!=typeof t)return null;"boolean"==typeof e&&(i=e,e=!1),e=e||at;var n=Tt.exec(t),s=!i&&[];return n?[e.createElement(n[1])]:(n=w([t],e,s),s&&s.length&&vt(s).remove(),vt.merge([],n.childNodes))};var mi=vt.fn.load;vt.fn.load=function(t,e,i){if("string"!=typeof t&&mi)return mi.apply(this,arguments);var n,s,o,r=this,a=t.indexOf(" ");return a>-1&&(n=vt.trim(t.slice(a,t.length)),t=t.slice(0,a)),vt.isFunction(e)?(i=e,e=void 0):e&&"object"==typeof e&&(s="POST"),r.length>0&&vt.ajax({url:t,type:s||"GET",dataType:"html",data:e}).done(function(t){o=arguments,r.html(n?vt("
").append(vt.parseHTML(t)).find(n):t)}).always(i&&function(t,e){r.each(function(){i.apply(this,o||[t.responseText,e,t])})}),this},vt.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(t,e){vt.fn[e]=function(t){return this.on(e,t)}}),vt.expr.filters.animated=function(t){return vt.grep(vt.timers,function(e){return t===e.elem}).length},vt.offset={setOffset:function(t,e,i){var n,s,o,r,a,l,h,c=vt.css(t,"position"),u=vt(t),d={};"static"===c&&(t.style.position="relative"),a=u.offset(),o=vt.css(t,"top"),l=vt.css(t,"left"),h=("absolute"===c||"fixed"===c)&&vt.inArray("auto",[o,l])>-1,h?(n=u.position(),r=n.top,s=n.left):(r=parseFloat(o)||0,s=parseFloat(l)||0),vt.isFunction(e)&&(e=e.call(t,i,vt.extend({},a))),null!=e.top&&(d.top=e.top-a.top+r),null!=e.left&&(d.left=e.left-a.left+s),"using"in e?e.using.call(t,d):u.css(d)}},vt.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){vt.offset.setOffset(this,t,e)});var e,i,n={top:0,left:0},s=this[0],o=s&&s.ownerDocument;if(o)return e=o.documentElement,vt.contains(e,s)?("undefined"!=typeof s.getBoundingClientRect&&(n=s.getBoundingClientRect()),i=ot(o),{top:n.top+(i.pageYOffset||e.scrollTop)-(e.clientTop||0),left:n.left+(i.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}):n},position:function(){if(this[0]){var t,e,i={top:0,left:0},n=this[0];return"fixed"===vt.css(n,"position")?e=n.getBoundingClientRect():(t=this.offsetParent(),e=this.offset(),vt.nodeName(t[0],"html")||(i=t.offset()),i.top+=vt.css(t[0],"borderTopWidth",!0),i.left+=vt.css(t[0],"borderLeftWidth",!0)),{top:e.top-i.top-vt.css(n,"marginTop",!0),left:e.left-i.left-vt.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent;t&&!vt.nodeName(t,"html")&&"static"===vt.css(t,"position");)t=t.offsetParent;return t||ve})}}),vt.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,e){var i=/Y/.test(e);vt.fn[t]=function(n){return Wt(this,function(t,n,s){var o=ot(t);return void 0===s?o?e in o?o[e]:o.document.documentElement[n]:t[n]:void(o?o.scrollTo(i?vt(o).scrollLeft():s,i?s:vt(o).scrollTop()):t[n]=s)},t,n,arguments.length,null)}}),vt.each(["top","left"],function(t,e){vt.cssHooks[e]=I(gt.pixelPosition,function(t,i){if(i)return i=be(t,e),ge.test(i)?vt(t).position()[e]+"px":i})}),vt.each({Height:"height",Width:"width"},function(t,e){vt.each({padding:"inner"+t,content:e,"":"outer"+t},function(i,n){vt.fn[n]=function(n,s){var o=arguments.length&&(i||"boolean"!=typeof n),r=i||(n===!0||s===!0?"margin":"border");return Wt(this,function(e,i,n){var s;return vt.isWindow(e)?e.document.documentElement["client"+t]:9===e.nodeType?(s=e.documentElement,Math.max(e.body["scroll"+t],s["scroll"+t],e.body["offset"+t],s["offset"+t],s["client"+t])):void 0===n?vt.css(e,i,r):vt.style(e,i,n,r)},e,o?n:void 0,o,null)}})}),vt.fn.extend({bind:function(t,e,i){return this.on(t,null,e,i)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,i,n){return this.on(e,t,i,n)},undelegate:function(t,e,i){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",i)}}),vt.fn.size=function(){return this.length},vt.fn.andSelf=vt.fn.addBack,n=[],s=function(){return vt}.apply(e,n),!(void 0!==s&&(t.exports=s));var vi=i.jQuery,yi=i.$;return vt.noConflict=function(t){return i.$===vt&&(i.$=yi),t&&i.jQuery===vt&&(i.jQuery=vi),vt},o||(i.jQuery=i.$=vt),vt})},function(t,e,i){var n,s;(function(){function i(t){function e(e,i,n,s,o,r){for(;o>=0&&o0?0:a-1;return arguments.length<3&&(s=i[r?r[l]:l],l+=t),e(i,n,s,r,l,a)}}function o(t){return function(e,i,n){i=k(i,n);for(var s=A(e),o=t>0?0:s-1;o>=0&&o0?r=o>=0?o:Math.max(o+a,r):a=o>=0?Math.min(o+1,a):o+a+1;else if(i&&o&&a)return o=i(n,s),n[o]===s?o:-1;if(s!==s)return o=e(f.call(n,r,a),x.isNaN),o>=0?o+r:-1;for(o=t>0?r:a-1;o>=0&&o=0&&e<=$};x.each=x.forEach=function(t,e,i){e=C(e,i);var n,s;if(N(t))for(n=0,s=t.length;n=0},x.invoke=function(t,e){var i=f.call(arguments,2),n=x.isFunction(e);return x.map(t,function(t){var s=n?e:t[e];return null==s?s:s.apply(t,i)})},x.pluck=function(t,e){return x.map(t,x.property(e))},x.where=function(t,e){return x.filter(t,x.matcher(e))},x.findWhere=function(t,e){return x.find(t,x.matcher(e))},x.max=function(t,e,i){var n,s,o=-(1/0),r=-(1/0);if(null==e&&null!=t){t=N(t)?t:x.values(t);for(var a=0,l=t.length;ao&&(o=n)}else e=k(e,i),x.each(t,function(t,i,n){s=e(t,i,n),(s>r||s===-(1/0)&&o===-(1/0))&&(o=t,r=s)});return o},x.min=function(t,e,i){var n,s,o=1/0,r=1/0;if(null==e&&null!=t){t=N(t)?t:x.values(t);for(var a=0,l=t.length;an||void 0===i)return 1;if(ie?(r&&(clearTimeout(r),r=null),a=h,o=t.apply(n,s),r||(n=s=null)):r||i.trailing===!1||(r=setTimeout(l,c)),o}},x.debounce=function(t,e,i){var n,s,o,r,a,l=function(){var h=x.now()-r;h=0?n=setTimeout(l,e-h):(n=null,i||(a=t.apply(o,s),n||(o=s=null)))};return function(){o=this,s=arguments,r=x.now();var h=i&&!n;return n||(n=setTimeout(l,e)),h&&(a=t.apply(o,s),o=s=null),a}},x.wrap=function(t,e){return x.partial(e,t)},x.negate=function(t){return function(){return!t.apply(this,arguments)}},x.compose=function(){var t=arguments,e=t.length-1;return function(){for(var i=e,n=t[e].apply(this,arguments);i--;)n=t[i].call(this,n);return n}},x.after=function(t,e){return function(){if(--t<1)return e.apply(this,arguments)}},x.before=function(t,e){var i;return function(){return--t>0&&(i=e.apply(this,arguments)),t<=1&&(e=null),i}},x.once=x.partial(x.before,2);var P=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];x.keys=function(t){if(!x.isObject(t))return[];if(y)return y(t);var e=[];for(var i in t)x.has(t,i)&&e.push(i);return P&&a(t,e),e},x.allKeys=function(t){if(!x.isObject(t))return[];var e=[];for(var i in t)e.push(i);return P&&a(t,e),e},x.values=function(t){for(var e=x.keys(t),i=e.length,n=Array(i),s=0;s":">",'"':""","'":"'","`":"`"},j=x.invert(L),H=function(t){var e=function(e){return t[e]},i="(?:"+x.keys(t).join("|")+")",n=RegExp(i),s=RegExp(i,"g");return function(t){return t=null==t?"":""+t,n.test(t)?t.replace(s,e):t}};x.escape=H(L),x.unescape=H(j),x.result=function(t,e,i){var n=null==t?void 0:t[e];return void 0===n&&(n=i),x.isFunction(n)?n.call(t):n};var F=0;x.uniqueId=function(t){var e=++F+"";return t?t+e:e},x.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var z=/(.)^/,q={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},W=/\\|'|\r|\n|\u2028|\u2029/g,B=function(t){return"\\"+q[t]};x.template=function(t,e,i){!e&&i&&(e=i),e=x.defaults({},e,x.templateSettings);var n=RegExp([(e.escape||z).source,(e.interpolate||z).source,(e.evaluate||z).source].join("|")+"|$","g"),s=0,o="__p+='";t.replace(n,function(e,i,n,r,a){return o+=t.slice(s,a).replace(W,B),s=a+e.length,i?o+="'+\n((__t=("+i+"))==null?'':_.escape(__t))+\n'":n?o+="'+\n((__t=("+n+"))==null?'':__t)+\n'":r&&(o+="';\n"+r+"\n__p+='"),e}),o+="';\n",e.variable||(o="with(obj||{}){\n"+o+"}\n"),o="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+o+"return __p;\n";try{var r=new Function(e.variable||"obj","_",o)}catch(t){throw t.source=o,t}var a=function(t){return r.call(this,t,x)},l=e.variable||"obj";return a.source="function("+l+"){\n"+o+"}",a},x.chain=function(t){var e=x(t);return e._chain=!0,e};var V=function(t,e){return t._chain?x(e).chain():e};x.mixin=function(t){x.each(x.functions(t),function(e){var i=x[e]=t[e];x.prototype[e]=function(){var t=[this._wrapped];return p.apply(t,arguments),V(this,i.apply(x,t))}})},x.mixin(x),x.each(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var e=c[t];x.prototype[t]=function(){var i=this._wrapped;return e.apply(i,arguments),"shift"!==t&&"splice"!==t||0!==i.length||delete i[0],V(this,i)}}),x.each(["concat","join","slice"],function(t){var e=c[t];x.prototype[t]=function(){return V(this,e.apply(this._wrapped,arguments))}}),x.prototype.value=function(){return this._wrapped},x.prototype.valueOf=x.prototype.toJSON=x.prototype.value,x.prototype.toString=function(){return""+this._wrapped},n=[],s=function(){return x}.apply(e,n),!(void 0!==s&&(t.exports=s))}).call(this)},function(t,e,i){var n,s;(function(o){!function(r){var a="object"==typeof self&&self.self===self&&self||"object"==typeof o&&o.global===o&&o;n=[i(2),i(1),e],s=function(t,e,i){a.Backbone=r(a,i,t,e)}.apply(e,n),!(void 0!==s&&(t.exports=s))}(function(t,e,i,n){var s=t.Backbone,o=Array.prototype.slice;e.VERSION="1.3.3",e.$=n,e.noConflict=function(){return t.Backbone=s,this},e.emulateHTTP=!1,e.emulateJSON=!1;var r=function(t,e,n){switch(t){case 1:return function(){return i[e](this[n])};case 2:return function(t){return i[e](this[n],t)};case 3:return function(t,s){return i[e](this[n],l(t,this),s)};case 4:return function(t,s,o){return i[e](this[n],l(t,this),s,o)};default:return function(){var t=o.call(arguments);return t.unshift(this[n]),i[e].apply(i,t)}}},a=function(t,e,n){i.each(e,function(e,s){i[s]&&(t.prototype[s]=r(e,s,n))})},l=function(t,e){return i.isFunction(t)?t:i.isObject(t)&&!e._isModel(t)?h(t):i.isString(t)?function(e){ return e.get(t)}:t},h=function(t){var e=i.matches(t);return function(t){return e(t.attributes)}},c=e.Events={},u=/\s+/,d=function(t,e,n,s,o){var r,a=0;if(n&&"object"==typeof n){void 0!==s&&"context"in o&&void 0===o.context&&(o.context=s);for(r=i.keys(n);athis.length&&(s=this.length),s<0&&(s+=this.length+1);var o,r,a=[],l=[],h=[],c=[],u={},d=e.add,p=e.merge,f=e.remove,g=!1,m=this.comparator&&null==s&&e.sort!==!1,v=i.isString(this.comparator)?this.comparator:null;for(r=0;r7),this._useHashChange=this._wantsHashChange&&this._hasHashChange,this._wantsPushState=!!this.options.pushState,this._hasPushState=!(!this.history||!this.history.pushState),this._usePushState=this._wantsPushState&&this._hasPushState,this.fragment=this.getFragment(),this.root=("/"+this.root+"/").replace(L,"/"),this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot()){var e=this.root.slice(0,-1)||"/";return this.location.replace(e+"#"+this.getPath()),!0}this._hasPushState&&this.atRoot()&&this.navigate(this.getHash(),{replace:!0})}if(!this._hasHashChange&&this._wantsHashChange&&!this._usePushState){this.iframe=document.createElement("iframe"),this.iframe.src="javascript:0",this.iframe.style.display="none",this.iframe.tabIndex=-1;var n=document.body,s=n.insertBefore(this.iframe,n.firstChild).contentWindow;s.document.open(),s.document.close(),s.location.hash="#"+this.fragment}var o=window.addEventListener||function(t,e){return attachEvent("on"+t,e)};if(this._usePushState?o("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe?o("hashchange",this.checkUrl,!1):this._wantsHashChange&&(this._checkUrlInterval=setInterval(this.checkUrl,this.interval)),!this.options.silent)return this.loadUrl()},stop:function(){var t=window.removeEventListener||function(t,e){return detachEvent("on"+t,e)};this._usePushState?t("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe&&t("hashchange",this.checkUrl,!1),this.iframe&&(document.body.removeChild(this.iframe),this.iframe=null),this._checkUrlInterval&&clearInterval(this._checkUrlInterval),I.started=!1},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();return e===this.fragment&&this.iframe&&(e=this.getHash(this.iframe.contentWindow)),e!==this.fragment&&(this.iframe&&this.navigate(e),void this.loadUrl())},loadUrl:function(t){return!!this.matchRoot()&&(t=this.fragment=this.getFragment(t),i.some(this.handlers,function(e){if(e.route.test(t))return e.callback(t),!0}))},navigate:function(t,e){if(!I.started)return!1;e&&e!==!0||(e={trigger:!!e}),t=this.getFragment(t||"");var i=this.root;""!==t&&"?"!==t.charAt(0)||(i=i.slice(0,-1)||"/");var n=i+t;if(t=this.decodeFragment(t.replace(j,"")),this.fragment!==t){if(this.fragment=t,this._usePushState)this.history[e.replace?"replaceState":"pushState"]({},document.title,n);else{if(!this._wantsHashChange)return this.location.assign(n);if(this._updateHash(this.location,t,e.replace),this.iframe&&t!==this.getHash(this.iframe.contentWindow)){var s=this.iframe.contentWindow;e.replace||(s.document.open(),s.document.close()),this._updateHash(s.location,t,e.replace)}}return e.trigger?this.loadUrl(t):void 0}},_updateHash:function(t,e,i){if(i){var n=t.href.replace(/(javascript:|#).*$/,"");t.replace(n+"#"+e)}else t.hash="#"+e}}),e.history=new I;var H=function(t,e){var n,s=this;return n=t&&i.has(t,"constructor")?t.constructor:function(){return s.apply(this,arguments)},i.extend(n,s,e),n.prototype=i.create(s.prototype,t),n.prototype.constructor=n,n.__super__=s.prototype,n};b.extend=w.extend=N.extend=T.extend=I.extend=H;var F=function(){throw new Error('A "url" property or function must be specified')},z=function(t,e){var i=e.error;e.error=function(n){i&&i.call(e.context,t,n,e),t.trigger("error",t,n,e)}};return e})}).call(e,function(){return this}())},function(t,e,i){var n,s;n=[i(142)],s=function(t){if(t.hasOwnProperty("__root")){var e="undefined"==typeof navigator?"__root":(navigator.language||navigator.userLanguage||"__root").toLowerCase();t=t["__"+e]||t["__"+e.split("-")[0]]||t.__root}var i=function(e){return t[e]||e};return i.cacheNonLocalized=!1,i}.apply(e,n),!(void 0!==s&&(t.exports=s))},function(t,e,i){var n,s;(function(o){n=[i(2),i(3),i(75),i(4)],s=function(t,e,i,n){"use strict";function s(e,i){var n=Array.prototype.slice.call(arguments,0),s=n.pop();return n.unshift(s),t.defaults.apply(t,n)}function r(e,i){i=i||"model";var s=t.template(e.join(""));return function(t,e){var o={view:e||{},_l:n};return o[i]=t||{},s(o)}}function a(t,e){e=e||{};var i=e.ascending?1:-1;return function(e,n){return e=e.get(t),n=n.get(t),(en?1:0)*i}}var l={logger:null,_logNamespace:"."};i(l);var h=e.Model.extend({initialize:function(e){if(this._checkEnabledSessionStorage(),!e.id)throw new Error("SessionStorageModel requires an id in the initial attributes");this.id=e.id;var i=this.isNew()?{}:this._read(this);this.clear({silent:!0}),this.save(t.extend({},this.defaults,i,e),{silent:!0}),this.on("change",function(){this.save()})},_checkEnabledSessionStorage:function(){try{return window.sessionStorage.length>=0}catch(t){return alert("Please enable cookies in your browser for this Galaxy site"),!1}},sync:function(t,e,i){i.silent||e.trigger("request",e,{},i);var n={};switch(t){case"create":n=this._create(e);break;case"read":n=this._read(e);break;case"update":n=this._update(e);break;case"delete":n=this._delete(e)}return void 0!==n||null!==n?i.success&&i.success():i.error&&i.error(),n},_create:function(t){try{var e=t.toJSON(),i=sessionStorage.setItem(t.id,JSON.stringify(e));return null===i?i:e}catch(t){if(!(t instanceof DOMException&&navigator.userAgent.indexOf("Safari")>-1))throw t}return null},_read:function(t){return JSON.parse(sessionStorage.getItem(t.id))},_update:function(t){return t._create(t)},_delete:function(t){return sessionStorage.removeItem(t.id)},isNew:function(){return!sessionStorage.hasOwnProperty(this.id)},_log:function(){return JSON.stringify(this.toJSON(),null," ")},toString:function(){return"SessionStorageModel("+this.id+")"}});!function(){h.prototype=t.omit(h.prototype,"url","urlRoot")}();var c={searchAttributes:[],searchAliases:{},searchAttribute:function(e,i){var n=this.get(e);return!(!i||void 0===n||null===n)&&(t.isArray(n)?this._searchArrayAttribute(n,i):n.toString().toLowerCase().indexOf(i.toLowerCase())!==-1)},_searchArrayAttribute:function(e,i){return i=i.toLowerCase(),t.any(e,function(t){return t.toString().toLowerCase().indexOf(i.toLowerCase())!==-1})},search:function(e){var i=this;return t.filter(this.searchAttributes,function(t){return i.searchAttribute(t,e)})},matches:function(t){var e="=",i=t.split(e);if(i.length>=2){var n=i[0];return n=this.searchAliases[n]||n,this.searchAttribute(n,i[1])}return!!this.search(t).length},matchesAll:function(e){var i=this;return e=e.match(/(".*"|\w*=".*"|\S*)/g).filter(function(t){return!!t}),t.all(e,function(t){return t=t.replace(/"/g,""),i.matches(t)})}},u={hiddenUntilActivated:function(e,i){if(i=i||{},this.HUAVOptions={$elementShown:this.$el,showFn:o.prototype.toggle,showSpeed:"fast"},t.extend(this.HUAVOptions,i||{}),this.HUAVOptions.hasBeenShown=this.HUAVOptions.$elementShown.is(":visible"),this.hidden=this.isHidden(),e){var n=this;e.on("click",function(t){n.toggle(n.HUAVOptions.showSpeed)})}},isHidden:function(){return this.HUAVOptions.$elementShown.is(":hidden")},toggle:function(){return this.hidden?(this.HUAVOptions.hasBeenShown||t.isFunction(this.HUAVOptions.onshowFirstTime)&&(this.HUAVOptions.hasBeenShown=!0,this.HUAVOptions.onshowFirstTime.call(this)),t.isFunction(this.HUAVOptions.onshow)&&(this.HUAVOptions.onshow.call(this),this.trigger("hiddenUntilActivated:shown",this)),this.hidden=!1):(t.isFunction(this.HUAVOptions.onhide)&&(this.HUAVOptions.onhide.call(this),this.trigger("hiddenUntilActivated:hidden",this)),this.hidden=!0),this.HUAVOptions.showFn.apply(this.HUAVOptions.$elementShown,arguments)}},d={initialize:function(t){this.draggable=t.draggable||!1},$dragHandle:function(){return this.$(".title-bar")},toggleDraggable:function(){this.draggable?this.draggableOff():this.draggableOn()},draggableOn:function(){this.draggable=!0,this.dragStartHandler=t.bind(this._dragStartHandler,this),this.dragEndHandler=t.bind(this._dragEndHandler,this);var e=this.$dragHandle().attr("draggable",!0).get(0);e.addEventListener("dragstart",this.dragStartHandler,!1),e.addEventListener("dragend",this.dragEndHandler,!1)},draggableOff:function(){this.draggable=!1;var t=this.$dragHandle().attr("draggable",!1).get(0);t.removeEventListener("dragstart",this.dragStartHandler,!1),t.removeEventListener("dragend",this.dragEndHandler,!1)},_dragStartHandler:function(t){return t.dataTransfer.effectAllowed="move",t.dataTransfer.setData("text",JSON.stringify(this.model.toJSON())),this.trigger("draggable:dragstart",t,this),!1},_dragEndHandler:function(t){return this.trigger("draggable:dragend",t,this),!1}},p={initialize:function(t){this.selectable=t.selectable||!1,this.selected=t.selected||!1},$selector:function(){return this.$(".selector")},_renderSelected:function(){this.$selector().find("span").toggleClass("fa-check-square-o",this.selected).toggleClass("fa-square-o",!this.selected)},toggleSelector:function(){this.$selector().is(":visible")?this.hideSelector():this.showSelector()},showSelector:function(t){t=void 0!==t?t:this.fxSpeed,this.selectable=!0,this.trigger("selectable",!0,this),this._renderSelected(),t?this.$selector().show(t):this.$selector().show()},hideSelector:function(t){t=void 0!==t?t:this.fxSpeed,this.selectable=!1,this.trigger("selectable",!1,this),t?this.$selector().hide(t):this.$selector().hide()},toggleSelect:function(t){this.selected?this.deselect(t):this.select(t)},select:function(t){return this.selected||(this.trigger("selected",this,t),this.selected=!0,this._renderSelected()),!1},deselect:function(t){return this.selected&&(this.trigger("de-selected",this,t),this.selected=!1,this._renderSelected()),!1}};return{LoggableMixin:l,SessionStorageModel:h,mixin:s,SearchableModelMixin:c,HiddenUntilActivatedViewMixin:u,DraggableViewMixin:d,SelectableViewMixin:p,wrapTemplate:r,buildComparator:a}}.apply(e,n),!(void 0!==s&&(t.exports=s))}).call(e,i(1))},function(t,e,i){var n,s;(function(i,o,r){n=[],s=function(){function t(t){return'
")}),a.show({backdrop:!0})}var o=t,r=function(t){this.$overlay=t.overlay,this.$dialog=t.dialog,this.$header=this.$dialog.find(".modal-header"),this.$body=this.$dialog.find(".modal-body"),this.$footer=this.$dialog.find(".modal-footer"),this.$backdrop=t.backdrop,this.$header.find(".close").on("click",o.proxy(this.hide,this))};o.extend(r.prototype,{setContent:function(t){this.$header.hide(),t.title&&(this.$header.find(".title").html(t.title),this.$header.show()),t.closeButton?(this.$header.find(".close").show(),this.$header.show()):this.$header.find(".close").hide(),this.$footer.hide();var e=this.$footer.find(".buttons").html("");t.buttons&&(o.each(t.buttons,function(t,i){e.append(o(" ").text(t).click(i)).append(" ")}),this.$footer.show());var i=this.$footer.find(".extra_buttons").html("");t.extra_buttons&&(o.each(t.extra_buttons,function(t,e){i.append(o("").text(t).click(e)).append(" ")}),this.$footer.show());var n=t.body;"progress"==n&&(n=o("
")),this.$body.html(n)},show:function(t,e){this.$dialog.is(":visible")||(t.backdrop?this.$backdrop.addClass("in"):this.$backdrop.removeClass("in"),this.$overlay.show(),this.$dialog.show(),this.$overlay.addClass("in"),this.$body.css("min-width",this.$body.width()),this.$body.css("max-height",o(window).height()-this.$footer.outerHeight()-this.$header.outerHeight()-parseInt(this.$dialog.css("padding-top"),10)-parseInt(this.$dialog.css("padding-bottom"),10))),e&&e()},hide:function(){var t=this;t.$dialog.fadeOut(function(){t.$overlay.hide(),t.$backdrop.removeClass("in"),t.$body.children().remove(),t.$body.css("min-width",void 0)})}});var a;return o(function(){a=new r({overlay:o("#top-modal"),dialog:o("#top-modal-dialog"),backdrop:o("#top-modal-backdrop")})}),{Modal:r,hide_modal:e,show_modal:i,show_message:n,show_in_overlay:s}}.apply(e,n),!(void 0!==s&&(t.exports=s))},function(t,e,i){var n,s;(function(o,r,a){n=[i(81),i(9),i(8),i(5)],s=function(t,e,i,n){var s=o.View.extend(n.LoggableMixin).extend({_logNamespace:"layout",el:"body",className:"full-content",_panelIds:["left","center","right"],defaultOptions:{message_box_visible:!1,message_box_content:"",message_box_class:"info",show_inactivity_warning:!1,inactivity_box_content:""},initialize:function(e){this.log(this+".initialize:",e),r.extend(this,r.pick(e,this._panelIds)),this.options=r.defaults(r.omit(e.config,this._panelIds),this.defaultOptions),Galaxy.modal=this.modal=new i.View,this.masthead=new t.View(this.options),this.$el.attr("scroll","no"),this.$el.html(this._template()),this.$el.append(this.masthead.frame.$el),this.$("#masthead").replaceWith(this.masthead.$el),this.$el.append(this.modal.$el),this.$messagebox=this.$("#messagebox"),this.$inactivebox=this.$("#inactivebox")},render:function(){return a(".select2-hidden-accessible").remove(),this.log(this+".render:"),this.masthead.render(),this.renderMessageBox(),this.renderInactivityBox(),this.renderPanels(),this._checkCommunicationServerOnline(),this},renderMessageBox:function(){if(this.options.message_box_visible){var t=this.options.message_box_content||"",e=this.options.message_box_class||"info";this.$el.addClass("has-message-box"),this.$messagebox.attr("class","panel-"+e+"-message").html(t).toggle(!!t).show()}else this.$el.removeClass("has-message-box"),this.$messagebox.hide();return this},renderInactivityBox:function(){if(this.options.show_inactivity_warning){var t=this.options.inactivity_box_content||"",e=a("").attr("href",Galaxy.root+"user/resend_verification").text("Resend verification");this.$el.addClass("has-inactivity-box"),this.$inactivebox.html(t+" ").append(e).toggle(!!t).show()}else this.$el.removeClass("has-inactivity-box"),this.$inactivebox.hide();return this},renderPanels:function(){var t=this;return this._panelIds.forEach(function(e){r.has(t,e)&&(t[e].setElement("#"+e),t[e].render())}),this.left||this.center.$el.css("left",0),this.right||this.center.$el.css("right",0),this},_template:function(){return['
','
','
','
','
',this.left?'
':"",this.center?'
':"",this.right?'",'
'].join("")},hideSidePanels:function(){this.left&&this.left.hide(),this.right&&this.right.hide()},toString:function(){return"PageLayoutView"},_checkCommunicationServerOnline:function(){var t=window.Galaxy.config.communication_server_host,e=window.Galaxy.config.communication_server_port,i=a("#show-chat-online"),n=window.Galaxy.user.attributes.preferences.communication_server;void 0===window.Galaxy.user.attributes.preferences||"1"!==n&&"true"!==n?i.css("visibility","hidden"):a.ajax({url:t+":"+e}).success(function(t){null!==window.Galaxy.user.id&&"hidden"===i.css("visibility")&&i.css("visibility","visible")}).error(function(t){i.css("visibility","hidden")})}});return{PageLayoutView:s}}.apply(e,n),!(void 0!==s&&(t.exports=s))}).call(e,i(3),i(2),i(1))},function(t,e,i){(function(t){!function(t,e){var i,n;return n=e.document,i=function(){function i(i){var n;try{n=e.localStorage}catch(t){n=!1}this._options=t.extend({name:"tour",steps:[],container:"body",autoscroll:!0,keyboard:!0,storage:n,debug:!1,backdrop:!1,backdropContainer:"body",backdropPadding:0,redirect:!0,orphan:!1,duration:!1,delay:!1,basePath:"",template:'',afterSetState:function(t,e){},afterGetState:function(t,e){},afterRemoveState:function(t){},onStart:function(t){},onEnd:function(t){},onShow:function(t){},onShown:function(t){},onHide:function(t){},onHidden:function(t){},onNext:function(t){},onPrev:function(t){},onPause:function(t,e){},onResume:function(t,e){},onRedirectError:function(t){}},i),this._force=!1,this._inited=!1,this._current=null,this.backdrop={overlay:null,$element:null,$background:null,backgroundShown:!1,overlayElementShown:!1}}return i.prototype.addSteps=function(t){var e,i,n;for(i=0,n=t.length;i

",next:e===this._options.steps.length-1?-1:e+1,prev:e-1,animation:!0,container:this._options.container,autoscroll:this._options.autoscroll,backdrop:this._options.backdrop,backdropContainer:this._options.backdropContainer,backdropPadding:this._options.backdropPadding,redirect:this._options.redirect,reflexElement:this._options.steps[e].element,orphan:this._options.orphan,duration:this._options.duration,delay:this._options.delay,template:this._options.template,onShow:this._options.onShow,onShown:this._options.onShown,onHide:this._options.onHide,onHidden:this._options.onHidden,onNext:this._options.onNext,onPrev:this._options.onPrev,onPause:this._options.onPause,onResume:this._options.onResume,onRedirectError:this._options.onRedirectError},this._options.steps[e])},i.prototype.init=function(t){return this._force=t,this.ended()?(this._debug("Tour ended, init prevented."),this):(this.setCurrentStep(),this._initMouseNavigation(),this._initKeyboardNavigation(),this._onResize(function(t){return function(){return t.showStep(t._current)}}(this)),null!==this._current&&this.showStep(this._current),this._inited=!0,this)},i.prototype.start=function(t){var e;return null==t&&(t=!1),this._inited||this.init(t),null===this._current&&(e=this._makePromise(null!=this._options.onStart?this._options.onStart(this):void 0),this._callOnPromiseDone(e,this.showStep,0)),this},i.prototype.next=function(){var t;return t=this.hideStep(this._current),this._callOnPromiseDone(t,this._showNextStep)},i.prototype.prev=function(){var t;return t=this.hideStep(this._current),this._callOnPromiseDone(t,this._showPrevStep)},i.prototype.goTo=function(t){var e;return e=this.hideStep(this._current),this._callOnPromiseDone(e,this.showStep,t)},i.prototype.end=function(){var i,s;return i=function(i){return function(s){if(t(n).off("click.tour-"+i._options.name),t(n).off("keyup.tour-"+i._options.name),t(e).off("resize.tour-"+i._options.name),i._setState("end","yes"),i._inited=!1,i._force=!1,i._clearTimer(),null!=i._options.onEnd)return i._options.onEnd(i)}}(this),s=this.hideStep(this._current),this._callOnPromiseDone(s,i)},i.prototype.ended=function(){return!this._force&&!!this._getState("end")},i.prototype.restart=function(){return this._removeState("current_step"),this._removeState("end"),this._removeState("redirect_to"),this.start()},i.prototype.pause=function(){var t;return t=this.getStep(this._current),t&&t.duration?(this._paused=!0,this._duration-=(new Date).getTime()-this._start,e.clearTimeout(this._timer),this._debug("Paused/Stopped step "+(this._current+1)+" timer ("+this._duration+" remaining)."),null!=t.onPause?t.onPause(this,this._duration):void 0):this},i.prototype.resume=function(){var t;return t=this.getStep(this._current),t&&t.duration?(this._paused=!1,this._start=(new Date).getTime(),this._duration=this._duration||t.duration,this._timer=e.setTimeout(function(t){return function(){return t._isLast()?t.next():t.end()}}(this),this._duration),this._debug("Started step "+(this._current+1)+" timer with duration "+this._duration),null!=t.onResume&&this._duration!==t.duration?t.onResume(this,this._duration):void 0):this},i.prototype.hideStep=function(e){var i,n,s;if(s=this.getStep(e))return this._clearTimer(),n=this._makePromise(null!=s.onHide?s.onHide(this,e):void 0),i=function(i){return function(n){var o;if(o=t(s.element),o.data("bs.popover")||o.data("popover")||(o=t("body")),o.popover("destroy").removeClass("tour-"+i._options.name+"-element tour-"+i._options.name+"-"+e+"-element"),o.removeData("bs.popover"),s.reflex&&t(s.reflexElement).removeClass("tour-step-element-reflex").off(""+i._reflexEvent(s.reflex)+".tour-"+i._options.name),s.backdrop&&i._hideBackdrop(),null!=s.onHidden)return s.onHidden(i)}}(this),this._callOnPromiseDone(n,i),n},i.prototype.showStep=function(t){var i,s,o,r;return this.ended()?(this._debug("Tour ended, showStep prevented."),this):(r=this.getStep(t))?(o=t").parent().html()},i.prototype._reflexEvent=function(t){return"[object Boolean]"==={}.toString.call(t)?"click":t},i.prototype._reposition=function(e,i){var s,o,r,a,l,h,c;if(a=e[0].offsetWidth,o=e[0].offsetHeight,c=e.offset(),l=c.left,h=c.top,s=t(n).outerHeight()-c.top-e.outerHeight(),s<0&&(c.top=c.top+s),r=t("html").outerWidth()-c.left-e.outerWidth(),r<0&&(c.left=c.left+r),c.top<0&&(c.top=0),c.left<0&&(c.left=0),e.offset(c),"bottom"===i.placement||"top"===i.placement){if(l!==c.left)return this._replaceArrow(e,2*(c.left-l),a,"left")}else if(h!==c.top)return this._replaceArrow(e,2*(c.top-h),o,"top")},i.prototype._center=function(i){return i.css("top",t(e).outerHeight()/2-i.outerHeight()/2)},i.prototype._replaceArrow=function(t,e,i,n){return t.find(".arrow").css(n,e?50*(1-e/i)+"%":"")},i.prototype._scrollIntoView=function(i,n){var s,o,r,a,l,h;return s=t(i),s.length?(o=t(e),a=s.offset().top,h=o.height(),l=Math.max(0,a-h/2),this._debug("Scroll into view. ScrollTop: "+l+". Element offset: "+a+". Window height: "+h+"."),r=0,t("body, html").stop(!0,!0).animate({scrollTop:Math.ceil(l)},function(t){return function(){if(2===++r)return n(),t._debug("Scroll into view.\nAnimation end element offset: "+s.offset().top+".\nWindow height: "+o.height()+".")}}(this))):n()},i.prototype._onResize=function(i,n){return t(e).on("resize.tour-"+this._options.name,function(){return clearTimeout(n),n=setTimeout(i,100)})},i.prototype._initMouseNavigation=function(){var e;return e=this,t(n).off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='prev']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='next']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='end']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='pause-resume']").on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='next']",function(t){return function(e){return e.preventDefault(),t.next()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='prev']",function(t){return function(e){return e.preventDefault(),t.prev()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='end']",function(t){return function(e){return e.preventDefault(),t.end()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='pause-resume']",function(i){var n;return i.preventDefault(),n=t(this),n.text(e._paused?n.data("pause-text"):n.data("resume-text")),e._paused?e.resume():e.pause()})},i.prototype._initKeyboardNavigation=function(){if(this._options.keyboard)return t(n).on("keyup.tour-"+this._options.name,function(t){return function(e){if(e.which)switch(e.which){case 39:return e.preventDefault(),t._isLast()?t.next():t.end();case 37:if(e.preventDefault(),t._current>0)return t.prev();break;case 27:return e.preventDefault(),t.end()}}}(this))},i.prototype._makePromise=function(e){return e&&t.isFunction(e.then)?e:null},i.prototype._callOnPromiseDone=function(t,e,i){return t?t.then(function(t){return function(n){return e.call(t,i)}}(this)):e.call(this,i)},i.prototype._showBackdrop=function(e){if(!this.backdrop.backgroundShown)return this.backdrop=t("
",{class:"tour-backdrop"}),this.backdrop.backgroundShown=!0,t(e.backdropContainer).append(this.backdrop)},i.prototype._hideBackdrop=function(){return this._hideOverlayElement(),this._hideBackground()},i.prototype._hideBackground=function(){if(this.backdrop)return this.backdrop.remove(),this.backdrop.overlay=null,this.backdrop.backgroundShown=!1},i.prototype._showOverlayElement=function(e,i){var n,s;if(n=t(e.element),n&&0!==n.length&&(!this.backdrop.overlayElementShown||i))return this.backdrop.overlayElementShown||(this.backdrop.$element=n.addClass("tour-step-backdrop"),this.backdrop.$background=t("
",{class:"tour-step-background"}),this.backdrop.$background.appendTo(e.backdropContainer),this.backdrop.overlayElementShown=!0),s={width:n.innerWidth(),height:n.innerHeight(),offset:n.offset()},e.backdropPadding&&(s=this._applyBackdropPadding(e.backdropPadding,s)),this.backdrop.$background.width(s.width).height(s.height).offset(s.offset)},i.prototype._hideOverlayElement=function(){if(this.backdrop.overlayElementShown)return this.backdrop.$element.removeClass("tour-step-backdrop"),this.backdrop.$background.remove(),this.backdrop.$element=null,this.backdrop.$background=null,this.backdrop.overlayElementShown=!1},i.prototype._applyBackdropPadding=function(t,e){return"object"==typeof t?(null==t.top&&(t.top=0),null==t.right&&(t.right=0),null==t.bottom&&(t.bottom=0),null==t.left&&(t.left=0),e.offset.top=e.offset.top-t.top,e.offset.left=e.offset.left-t.left,e.width=e.width+t.left+t.right,e.height=e.height+t.top+t.bottom):(e.offset.top=e.offset.top-t,e.offset.left=e.offset.left-t,e.width=e.width+2*t,e.height=e.height+2*t),e},i.prototype._clearTimer=function(){return e.clearTimeout(this._timer),this._timer=null,this._duration=null},i.prototype._getProtocol=function(t){return t=t.split("://"),t.length>1?t[0]:"http"},i.prototype._getHost=function(t){return t=t.split("//"),t=t.length>1?t[1]:t[0],t.split("/")[0]},i.prototype._getPath=function(t){return t.replace(/\/?$/,"").split("?")[0].split("#")[0]},i.prototype._getQuery=function(t){return this._getParams(t,"?")},i.prototype._getHash=function(t){return this._getParams(t,"#")},i.prototype._getParams=function(t,e){var i,n,s,o,r;if(n=t.split(e),1===n.length)return{};for(n=n[1].split("&"),s={},o=0,r=n.length;o").append(this.$button=r("
").append(this.$icon=r("")).append(this.$title=r("")))),this.listenTo(this.model,"change",this.render,this),this.render()},render:function(t){var t=this.model.attributes;this.$el.removeClass().addClass(t.cls).addClass(t.disabled&&"disabled").attr("disabled",t.disabled).attr("id",t.id).css("float",t.floating).off("click").on("click",function(){r(".tooltip").hide(),!t.disabled&&t.onclick&&t.onclick()}),this.$button.addClass("button").tooltip({title:t.tooltip,placement:"bottom"}),this.$icon.removeClass().addClass("icon fa").addClass(t.icon),this.$title.addClass("title").html(t.title),t.icon&&t.title&&this.$icon.addClass("ui-margin-right")}}),a=e.extend({$menu:null,initialize:function(t){this.model=t&&t.model||new o.Model({id:"",title:"",floating:"right",pull:"right",icon:null,onclick:null,cls:"ui-button-icon ui-button-menu",tooltip:"",target:"",href:"",onunload:null,visible:!0,tag:""}).set(t),this.collection=new o.Collection,this.setElement(r("
").append(this.$root=r("
").append(this.$icon=r("")).append(this.$title=r("")))),this.listenTo(this.model,"change",this.render,this),this.listenTo(this.collection,"change add remove reset",this.render,this),this.render()},render:function(){var t=this,e=this.model.attributes;this.$el.removeClass().addClass("dropdown").addClass(e.cls).attr("id",e.id).css({float:e.floating,display:e.visible&&this.collection.where({visible:!0}).length>0?"block":"none"}),this.$root.addClass("root button dropdown-toggle").attr("data-toggle","dropdown").tooltip({title:e.tooltip,placement:"bottom"}).off("click").on("click",function(t){r(".tooltip").hide(),t.preventDefault(),e.onclick&&e.onclick()}),this.$icon.removeClass().addClass("icon fa").addClass(e.icon),this.$title.removeClass().addClass("title").html(e.title),e.icon&&e.title&&this.$icon.addClass("ui-margin-right"),this.$menu&&this.$menu.remove(),this.collection.length>0&&(this.$menu=r("