diff --git a/.ci/flake8_lint_include_list.txt b/.ci/flake8_lint_include_list.txt index 4789b884112..4cb3e453782 100644 --- a/.ci/flake8_lint_include_list.txt +++ b/.ci/flake8_lint_include_list.txt @@ -101,7 +101,7 @@ lib/galaxy/webapps/galaxy/api/genomes.py lib/galaxy/webapps/galaxy/api/histories.py lib/galaxy/webapps/galaxy/api/__init__.py lib/galaxy/webapps/galaxy/api/jobs.py -lib/galaxy/webapps/galaxy/api/lda_datasets.py +lib/galaxy/webapps/galaxy/api/library_datasets.py lib/galaxy/webapps/galaxy/api/requests.py lib/galaxy/webapps/galaxy/api/roles.py lib/galaxy/webapps/galaxy/api/samples.py diff --git a/client/galaxy/scripts/mvc/library/library-dataset-view.js b/client/galaxy/scripts/mvc/library/library-dataset-view.js index ddc4f556493..1a561373720 100644 --- a/client/galaxy/scripts/mvc/library/library-dataset-view.js +++ b/client/galaxy/scripts/mvc/library/library-dataset-view.js @@ -16,8 +16,10 @@ var LibraryDatasetView = Backbone.View.extend({ model: null, - options: { + options: {}, + defaults: { + edit_mode: false }, events: { @@ -25,13 +27,11 @@ var LibraryDatasetView = Backbone.View.extend({ "click .toolbtn_cancel_modifications" : "render", "click .toolbtn-download-dataset" : "downloadDataset", "click .toolbtn-import-dataset" : "importIntoHistory", - "click .toolbtn-share-dataset" : "shareDataset", "click .btn-copy-link-to-clipboard" : "copyToClipboard", "click .btn-make-private" : "makeDatasetPrivate", "click .btn-remove-restrictions" : "removeDatasetRestrictions", "click .toolbtn_save_permissions" : "savePermissions", - "click .toolbtn_save_modifications" : "comingSoon", - + "click .toolbtn_save_modifications" : "saveModifications" }, // genome select @@ -134,7 +134,10 @@ var LibraryDatasetView = Backbone.View.extend({ $(".tooltip").remove(); var template = this.templateModifyDataset(); this.$el.html(template({item: this.model})); - this.renderSelectBoxes({genome_build: this.model.get('genome_build'), file_ext: this.model.get('file_ext') }); + this.renderSelectBoxes({ + genome_build: this.model.get('genome_build'), + file_ext: this.model.get('file_ext') + }); $(".peek").html(this.model.get("peek")); $("#center [data-toggle]").tooltip(); }, @@ -245,10 +248,6 @@ var LibraryDatasetView = Backbone.View.extend({ }); }, - shareDataset: function(){ - mod_toastr.info('Feature coming soon.'); - }, - goBack: function(){ Galaxy.libraries.library_router.back(); }, @@ -457,8 +456,57 @@ var LibraryDatasetView = Backbone.View.extend({ } }, - comingSoon: function(){ - mod_toastr.warning('Feature coming soon.'); + /** + * Save the changes made to the library dataset. + */ + saveModifications: function(options){ + var is_changed = false; + var ld = this.model; + var new_name = this.$el.find('.input_dataset_name').val(); + if (typeof new_name !== 'undefined' && new_name !== ld.get('name') ){ + if (new_name.length > 0){ + ld.set("name", new_name); + is_changed = true; + } else{ + mod_toastr.warning('Library dataset name has to be at least 1 character long.'); + return; + } + } + var new_info = this.$el.find('.input_dataset_misc_info').val(); + if (typeof new_info !== 'undefined' && new_info !== ld.get('misc_info') ){ + ld.set("misc_info", new_info); + is_changed = true; + } + var new_genome_build = this.select_genome.$el.select2('data').id; + if (typeof new_genome_build !== 'undefined' && new_genome_build !== ld.get('genome_build') ){ + ld.set("genome_build", new_genome_build); + is_changed = true; + } + var new_ext = this.select_extension.$el.select2('data').id; + if (typeof new_ext !== 'undefined' && new_ext !== ld.get('file_ext') ){ + ld.set("file_ext", new_ext); + is_changed = true; + } + var dataset_view = this; + if (is_changed){ + ld.save(null, { + patch: true, + success: function(ld) { + dataset_view.render() + mod_toastr.success('Changes to library dataset saved.'); + }, + error: function(model, response){ + if (typeof response.responseJSON !== "undefined"){ + mod_toastr.error(response.responseJSON.err_msg); + } else { + mod_toastr.error('An error occured while attempting to update the library dataset.'); + } + } + }); + } else { + dataset_view.render() + mod_toastr.info('Nothing has changed.'); + } }, copyToClipboard: function(){ @@ -523,42 +571,46 @@ var LibraryDatasetView = Backbone.View.extend({ }, /** - * Request all extensions and genomes from Galaxy - * and save them sorted in arrays. + * If needed request all extensions and/or genomes from Galaxy + * and save them in sorted arrays. */ fetchExtAndGenomes: function(){ var that = this; - mod_utils.get({ - url : Galaxy.root + "api/datatypes?extension_only=False", - success : function( datatypes ) { - for (var key in datatypes) { - that.list_extensions.push({ - id : datatypes[key].extension, - text : datatypes[key].extension, - description : datatypes[key].description, - description_url : datatypes[key].description_url - }); - } - that.list_extensions.sort(function(a, b) { - return a.id > b.id ? 1 : a.id < b.id ? -1 : 0; - }); - that.list_extensions.unshift(that.auto); - } + if (this.list_genomes.length == 0){ + mod_utils.get({ + url : Galaxy.root + "api/datatypes?extension_only=False", + success : function( datatypes ) { + for (var key in datatypes) { + that.list_extensions.push({ + id : datatypes[key].extension, + text : datatypes[key].extension, + description : datatypes[key].description, + description_url : datatypes[key].description_url + }); + } + that.list_extensions.sort(function(a, b) { + return a.id > b.id ? 1 : a.id < b.id ? -1 : 0; + }); + that.list_extensions.unshift(that.auto); + } }); - mod_utils.get({ - url : Galaxy.root + "api/genomes", + } + if (this.list_extensions.length == 0){ + mod_utils.get({ + url : Galaxy.root + "api/genomes", success : function( genomes ) { - for (var key in genomes ) { - that.list_genomes.push({ - id : genomes[key][1], - text : genomes[key][0] - }); - } - that.list_genomes.sort(function(a, b) { - return a.id > b.id ? 1 : a.id < b.id ? -1 : 0; - }); - } - }); + for (var key in genomes ) { + that.list_genomes.push({ + id : genomes[key][1], + text : genomes[key][0] + }); + } + that.list_genomes.sort(function(a, b) { + return a.id > b.id ? 1 : a.id < b.id ? -1 : 0; + }); + } + }); + } }, renderSelectBoxes: function(options){ @@ -566,6 +618,7 @@ var LibraryDatasetView = Backbone.View.extend({ // See this.fetchExtAndGenomes() // TODO switch to common resources: // https://trello.com/c/dIUE9YPl/1933-ui-common-resources-and-data-into-galaxy-object + var that = this; var current_genome = '?'; var current_ext = 'auto'; if (typeof options !== 'undefined'){ @@ -576,17 +629,16 @@ var LibraryDatasetView = Backbone.View.extend({ current_ext = options.file_ext; } } - var that = this; this.select_genome = new mod_select.View( { css: 'dataset-genome-select', data: that.list_genomes, - container: that.$el.find( '#dataset_genome_select' ), + container: that.$el.find('#dataset_genome_select'), value: current_genome } ); this.select_extension = new mod_select.View({ css: 'dataset-extension-select', data: that.list_extensions, - container: that.$el.find( '#dataset_extension_select' ), + container: that.$el.find('#dataset_extension_select'), value: current_ext }); }, @@ -711,13 +763,13 @@ var LibraryDatasetView = Backbone.View.extend({ '<% } %>', '<% if (item.get("misc_blurb")) { %>', '', - 'Miscellaneous blurb', + 'Misc. blurb', '<%= _.escape(item.get("misc_blurb")) %>', '', '<% } %>', '<% if (item.get("misc_info")) { %>', '', - 'Miscellaneous information', + 'Misc. info', '<%= _.escape(item.get("misc_info")) %>', '', '<% } %>', @@ -902,7 +954,6 @@ var LibraryDatasetView = Backbone.View.extend({ '', '
', - '

For full editing options please import the dataset to history and use "Edit attributes" on it.

', '', '', '', @@ -956,12 +1007,12 @@ var LibraryDatasetView = Backbone.View.extend({ '', '', '', - '', - '', + '', + '', '', '', - '', - '', + '', + '', '', //TODO: add functionality to modify tags here '<% if (item.get("tags")) { %>', diff --git a/client/galaxy/scripts/mvc/library/library-folder-view.js b/client/galaxy/scripts/mvc/library/library-folder-view.js index a66019ccbd7..193ba299ec6 100644 --- a/client/galaxy/scripts/mvc/library/library-folder-view.js +++ b/client/galaxy/scripts/mvc/library/library-folder-view.js @@ -37,8 +37,6 @@ var FolderView = Backbone.View.extend({ success: function() { if (that.options.show_permissions){ that.showPermissions(); - } else { - that.render(); } }, error: function(model, response){ @@ -51,19 +49,6 @@ var FolderView = Backbone.View.extend({ }); }, - render: function(options){ - $(".tooltip").remove(); - this.options = _.extend(this.options, options); - var template = this.templateFolder(); - this.$el.html(template({item: this.model})); - $(".peek").html(this.model.get("peek")); - $("#center [data-toggle]").tooltip(); - }, - - shareFolder: function(){ - mod_toastr.info('Feature coming soon.'); - }, - goBack: function(){ Galaxy.libraries.library_router.back(); }, @@ -165,18 +150,6 @@ var FolderView = Backbone.View.extend({ return select_options; }, - comingSoon: function(){ - mod_toastr.warning('Feature coming soon.'); - }, - - copyToClipboard: function(){ - var href = Backbone.history.location.href; - if (href.lastIndexOf('/permissions') !== -1){ - href = href.substr(0, href.lastIndexOf('/permissions')); - } - window.prompt("Copy to clipboard: Ctrl+C, Enter", href); - }, - /** * Extract the role ids from Select2 elements's 'data' */ @@ -206,57 +179,6 @@ var FolderView = Backbone.View.extend({ }) }, - templateFolder : function(){ - return _.template([ - '
', - '
', - '', - '/datasets/<%- item.id %>/permissions">', - '', - '', - '', - '
', - '

', - 'This dataset is unrestricted so everybody can access it. Just share the URL of this page. ', - ' ', - '

', - '
', - '
">Name<%= _.escape(item.get("message")) %>
Miscellaneous information<%= _.escape(item.get("misc_info")) %>Misc. blurb<%= _.escape(item.get("misc_blurb")) %>
Miscellaneous blurb<%= _.escape(item.get("misc_blurb")) %>Misc. information">
', - '', - '', - '', - '', - '<% if (item.get("file_ext")) { %>', - '', - '', - '', - '', - '<% } %>', - '
">', - 'Name', - '', - '<%= _.escape(item.get("name")) %>', - '
Data type', - '<%= _.escape(item.get("file_ext")) %>', - '
', - '
', - '' - ].join('')); - }, - templateFolderPermissions : function(){ return _.template([ '
', diff --git a/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js b/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js index 0c301fa1c1b..6f77fb6c51f 100644 --- a/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js +++ b/client/galaxy/scripts/mvc/library/library-foldertoolbar-view.js @@ -375,7 +375,7 @@ var FolderToolbarView = Backbone.View.extend({ var folder_name = self.options.full_path[self.options.full_path.length - 1][1] self.modal.show({ closing_events : true, - title : 'Adding datasets from your history to folder ' + folder_name, + title : 'Adding datasets from your history to ' + folder_name, body : template_modal({histories: self.histories.models}), buttons : { 'Add' : function() {self.addAllDatasetsFromHistory();}, @@ -721,6 +721,12 @@ var FolderToolbarView = Backbone.View.extend({ var history_contents_template = self.templateHistoryContents(); self.histories.get(history_id).set({'contents' : history_contents}); self.modal.$el.find('#selected_history_content').html(history_contents_template({history_contents: history_contents.models.reverse()})); + self.modal.$el.find('.history-import-select-all').bind("click", function(){ + $('#selected_history_content [type=checkbox]').prop('checked', true); + }); + self.modal.$el.find('.history-import-unselect-all').bind("click", function(){ + $('#selected_history_content [type=checkbox]').prop('checked', false); + }); }, error: function(model, response){ if (typeof response.responseJSON !== "undefined"){ @@ -745,9 +751,9 @@ var FolderToolbarView = Backbone.View.extend({ } else { this.modal.disableButton( 'Add' ); checked_hdas.each(function(){ - var hid = $( this.parentElement ).data( 'id' ); + var hid = $( this.parentElement.parentElement ).data( 'id' ); if ( hid ) { - var item_type = $( this.parentElement ).data( 'name' ); + var item_type = $( this.parentElement.parentElement ).data( 'name' ); history_item_ids.push( hid ); history_item_types.push( item_type ); } @@ -1162,7 +1168,7 @@ var FolderToolbarView = Backbone.View.extend({ '', ' Details', '', - '', + '', '', '', + '' ].join('')); }, diff --git a/client/galaxy/scripts/mvc/library/library-library-view.js b/client/galaxy/scripts/mvc/library/library-library-view.js index 9d6d6b82d19..a362d99a4aa 100644 --- a/client/galaxy/scripts/mvc/library/library-library-view.js +++ b/client/galaxy/scripts/mvc/library/library-library-view.js @@ -37,8 +37,6 @@ var LibraryView = Backbone.View.extend({ success: function() { if (that.options.show_permissions){ that.showPermissions(); - } else { - that.render(); } }, error: function(model, response){ @@ -51,18 +49,6 @@ var LibraryView = Backbone.View.extend({ }); }, - render: function(options){ - $(".tooltip").remove(); - this.options = _.extend(this.options, options); - var template = this.templateLibrary(); - this.$el.html(template({item: this.model})); - $("#center [data-toggle]").tooltip(); - }, - - shareDataset: function(){ - mod_toastr.info('Feature coming soon.'); - }, - goBack: function(){ Galaxy.libraries.library_router.back(); }, @@ -175,18 +161,6 @@ var LibraryView = Backbone.View.extend({ return select_options; }, - comingSoon: function(){ - mod_toastr.warning('Feature coming soon.'); - }, - - copyToClipboard: function(){ - var href = Backbone.history.location.href; - if (href.lastIndexOf('/permissions') !== -1){ - href = href.substr(0, href.lastIndexOf('/permissions')); - } - window.prompt("Copy to clipboard: Ctrl+C, Enter", href); - }, - makeDatasetPrivate: function(){ var self = this; $.post( Galaxy.root + "api/libraries/datasets/" + self.id + "/permissions?action=make_private").done(function(fetched_permissions) { @@ -237,56 +211,6 @@ var LibraryView = Backbone.View.extend({ }) }, - templateLibrary : function(){ - return _.template([ - '
', - '', - '

', - 'This dataset is unrestricted so everybody can access it. Just share the URL of this page. ', - ' ', - '

', - '
', - '', - '', - '', - '', - '', - '<% if (item.get("file_ext")) { %>', - '', - '', - '', - '', - '<% } %>', - '
">', - 'Name', - '', - '<%= _.escape(item.get("name")) %>', - '
Data type', - '<%= _.escape(item.get("file_ext")) %>', - '
', - '
', - '
', - ].join('')); - }, - templateLibraryPermissions : function(){ return _.template([ '
', diff --git a/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js b/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js index 3ea68110cdb..5f005d7d648 100644 --- a/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js +++ b/client/galaxy/scripts/mvc/library/library-librarytoolbar-view.js @@ -210,7 +210,7 @@ var LibraryToolbarView = Backbone.View.extend({ '', '', '<% } %>', - '', + '', '', '', '', diff --git a/lib/galaxy/managers/libraries.py b/lib/galaxy/managers/libraries.py index 37ad6947ff6..87ee844a182 100644 --- a/lib/galaxy/managers/libraries.py +++ b/lib/galaxy/managers/libraries.py @@ -150,8 +150,8 @@ class LibraryManager(object): :param check_accessible: flag whether to check that user can access library :type check_accessible: bool - :returns: the original folder - :rtype: LibraryFolder + :returns: the original library + :rtype: Library """ # all libraries are accessible to an admin if trans.user_is_admin(): diff --git a/lib/galaxy/managers/library_datasets.py b/lib/galaxy/managers/library_datasets.py new file mode 100644 index 00000000000..a0a9e8a9a21 --- /dev/null +++ b/lib/galaxy/managers/library_datasets.py @@ -0,0 +1,234 @@ +"""Manager and Serializer for library datasets.""" +import logging + +from galaxy import util + +from galaxy.exceptions import InternalServerError +from galaxy.exceptions import ItemAccessibilityException +from galaxy.exceptions import InsufficientPermissionsException +from galaxy.exceptions import ObjectNotFound +from galaxy.exceptions import RequestParameterInvalidException +from galaxy.managers import tags +from galaxy.util import validation + +log = logging.getLogger(__name__) + + +class LibraryDatasetsManager(object): + """Interface/service object for interacting with library datasets.""" + + def __init__(self, app): + self.app = app + self.tag_manager = tags.GalaxyTagManager(app.model.context) + + def get(self, trans, decoded_library_dataset_id, check_accessible=True): + """ + Get the library dataset from the DB. + + :param decoded_library_dataset_id: decoded library dataset id + :type decoded_library_dataset_id: int + :param check_accessible: flag whether to check that user can access item + :type check_accessible: bool + + :returns: the requested library dataset + :rtype: galaxy.model.LibraryDataset + """ + try: + ld = trans.sa_session.query(trans.app.model.LibraryDataset).filter(trans.app.model.LibraryDataset.table.c.id == decoded_library_dataset_id).one() + except Exception as e: + raise InternalServerError('Error loading from the database.' + str(e)) + ld = self.secure(trans, ld, check_accessible) + return ld + + def update(self, trans, ld, payload): + """ + Update the given library dataset - the latest linked ldda. + Updating older lddas (versions) is not supported. + + :param ld: library dataset to change + :type ld: LibraryDataset + :param check_ownership: flag whether to check that user owns the item + :type check_ownership: bool + :param check_accessible: flag whether to check that user can access item + :type check_accessible: bool + + :returns: the changed library dataset + :rtype: galaxy.model.LibraryDataset + + :raises: ItemAccessibilityException, InsufficientPermissionsException + """ + current_user_roles = trans.get_current_user_roles() + self.check_modifiable(trans, ld) + if ld.deleted is True: + raise ItemAccessibilityException("You cannot update a deleted library dataset. Undelete it first.") + if not (trans.user_is_admin or trans.app.security_agent.can_modify_library_item(current_user_roles, ld)): + raise InsufficientPermissionsException('You do not have proper permission to modify this library dataset.') + # we are going to operate on the actual latest ldda + ldda = ld.library_dataset_dataset_association + payload = self._validate_and_parse_update_payload(payload) + self._set_from_dict(trans, ldda, payload) + return ld + + def _set_from_dict(self, trans, ldda, new_data): + changed = False + new_name = new_data.get('name', None) + if new_name is not None and new_name != ldda.name: + ldda.name = new_name + changed = True + new_misc_info = new_data.get('misc_info', None) + if new_misc_info is not None and new_misc_info != ldda.info: + ldda.info = new_misc_info + changed = True + new_file_ext = new_data.get('file_ext', None) + if new_file_ext is not None and new_file_ext != ldda.extension: + ldda.extension = new_file_ext + # TODO trigger set metadata here + changed = True + new_genome_build = new_data.get('genome_build', None) + if new_genome_build is not None and new_genome_build != ldda.dbkey: + ldda.dbkey = new_genome_build + changed = True + if changed: + trans.sa_session.add(ldda) + trans.sa_session.flush() + return changed + + def _validate_and_parse_update_payload(self, payload): + MINIMUM_STRING_LENGTH = 1 + validated_payload = {} + for key, val in payload.items(): + if val is None: + continue + if key in ('name'): + if len(val) < MINIMUM_STRING_LENGTH: + raise RequestParameterInvalidException('%s must have at least length of %s' % (key, MINIMUM_STRING_LENGTH)) + val = validation.validate_and_sanitize_basestring(key, val) + validated_payload[key] = val + if key in ('misc_info'): + val = validation.validate_and_sanitize_basestring(key, val) + validated_payload[key] = val + if key in ('file_ext'): + datatype = self.app.datatypes_registry.get_datatype_by_extension(val) + if datatype is None: + raise RequestParameterInvalidException('This Galaxy does not recognize the datatype of: %s' % (val)) + validated_payload[key] = val + if key in ('genome_build'): + if len(val) < MINIMUM_STRING_LENGTH: + raise RequestParameterInvalidException('%s must have at least length of %s' % (key, MINIMUM_STRING_LENGTH)) + val = validation.validate_and_sanitize_basestring(key, val) + validated_payload[key] = val + return validated_payload + + def secure(self, trans, ld, check_accessible=True, check_ownership=False): + """ + Check if library dataset is accessible to current user or the user is an admin. + + :param ld: library dataset + :type ld: galaxy.model.LibraryDataset + :param check_accessible: flag whether to check that user can access library dataset + :type check_accessible: bool + + :returns: the original library dataset + :rtype: galaxy.model.LibraryDataset + """ + if trans.user_is_admin(): + # all operations are available to an admin + return ld + if check_accessible: + ld = self.check_accessible(trans, ld) + return ld + + def check_accessible(self, trans, ld): + """ + Check whether the current user has permissions to access library dataset. + + :param ld: library dataset + :type ld: galaxy.model.LibraryDataset + + :returns: the original library dataset + :rtype: galaxy.model.LibraryDataset + + :raises: ObjectNotFound + """ + if not trans.app.security_agent.can_access_library_item(trans.get_current_user_roles(), ld, trans.user): + raise ObjectNotFound('Library dataset with the id provided was not found.') + elif ld.deleted: + raise ObjectNotFound('Library dataset with the id provided is deleted.') + else: + return ld + + def check_modifiable(self, trans, ld): + """ + Check whether the current user has permissions to modify library dataset. + + :param ld: library dataset + :type ld: galaxy.model.LibraryDataset + + :returns: the original library dataset + :rtype: galaxy.model.LibraryDataset + + :raises: ObjectNotFound + """ + if trans.user_is_admin(): + # all operations are available to an admin + return ld + if not trans.app.security_agent.can_modify_library_item(trans.get_current_user_roles(), ld): + raise InsufficientPermissionsException('You do not have proper permission to modify this library dataset.') + elif ld.deleted: + raise ObjectNotFound('Library dataset with the id provided is deleted.') + else: + return ld + + def serialize(self, trans, ld): + """Serialize the library dataset into a dictionary.""" + current_user_roles = trans.get_current_user_roles() + + # Build the full path for breadcrumb purposes. + full_path = self._build_path(trans, ld.folder) + dataset_item = (trans.security.encode_id(ld.id), ld.name) + full_path.insert(0, dataset_item) + full_path = full_path[::-1] + + # Find expired versions of the library dataset + expired_ldda_versions = [] + for expired_ldda in ld.expired_datasets: + expired_ldda_versions.append((trans.security.encode_id(expired_ldda.id), expired_ldda.name)) + + rval = trans.security.encode_all_ids(ld.to_dict()) + if len(expired_ldda_versions) > 0: + rval['has_versions'] = True + rval['expired_versions'] = expired_ldda_versions + rval['deleted'] = ld.deleted + rval['folder_id'] = 'F' + rval['folder_id'] + rval['full_path'] = full_path + rval['file_size'] = util.nice_size(int(ld.library_dataset_dataset_association.get_size())) + rval['date_uploaded'] = ld.library_dataset_dataset_association.create_time.strftime("%Y-%m-%d %I:%M %p") + rval['can_user_modify'] = trans.app.security_agent.can_modify_library_item(current_user_roles, ld) or trans.user_is_admin() + rval['is_unrestricted'] = trans.app.security_agent.dataset_is_public(ld.library_dataset_dataset_association.dataset) + rval['tags'] = self.tag_manager.get_tags_str(ld.library_dataset_dataset_association.tags) + + # Manage dataset permission is always attached to the dataset itself, not the the ld or ldda to maintain consistency + rval['can_user_manage'] = trans.app.security_agent.can_manage_dataset(current_user_roles, ld.library_dataset_dataset_association.dataset) or trans.user_is_admin() + return rval + + def _build_path(self, trans, folder): + """ + Search the path upwards recursively and load the whole route of + names and ids for breadcrumb building purposes. + + :param folder: current folder for navigating up + :param type: Galaxy LibraryFolder + + :returns: list consisting of full path to the library + :type: list + """ + path_to_root = [] + if folder.parent_id is None: + # We are almost in root + path_to_root.append(('F' + trans.security.encode_id(folder.id), folder.name)) + else: + # We add the current folder and traverse up one folder. + path_to_root.append(('F' + trans.security.encode_id(folder.id), folder.name)) + upper_folder = trans.sa_session.query(trans.app.model.LibraryFolder).get(folder.parent_id) + path_to_root.extend(self._build_path(trans, upper_folder)) + return path_to_root diff --git a/lib/galaxy/managers/workflows.py b/lib/galaxy/managers/workflows.py index 4ffc5f265ec..85542e00bd5 100644 --- a/lib/galaxy/managers/workflows.py +++ b/lib/galaxy/managers/workflows.py @@ -31,7 +31,7 @@ log = logging.getLogger(__name__) class WorkflowsManager(object): - """ Handle CRUD type operaitons related to workflows. More interesting + """ Handle CRUD type operations related to workflows. More interesting stuff regarding workflow execution, step sorting, etc... can be found in the galaxy.workflow module. """ diff --git a/lib/galaxy/webapps/galaxy/api/lda_datasets.py b/lib/galaxy/webapps/galaxy/api/library_datasets.py similarity index 81% rename from lib/galaxy/webapps/galaxy/api/lda_datasets.py rename to lib/galaxy/webapps/galaxy/api/library_datasets.py index 6da88342cb0..5ef8e6baad9 100644 --- a/lib/galaxy/webapps/galaxy/api/lda_datasets.py +++ b/lib/galaxy/webapps/galaxy/api/library_datasets.py @@ -1,6 +1,4 @@ -""" -API operations on the library datasets. -""" +"""API operations on the library datasets.""" import glob import logging import os @@ -16,7 +14,8 @@ from galaxy import exceptions from galaxy import util from galaxy import web from galaxy.exceptions import ObjectNotFound -from galaxy.managers import folders, roles, tags +from galaxy.managers import base as managers_base +from galaxy.managers import folders, library_datasets, roles from galaxy.tools.actions import upload_common from galaxy.tools.parameters import populate_state from galaxy.util.streamball import StreamBall @@ -31,81 +30,47 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): def __init__(self, app): super(LibraryDatasetsController, self).__init__(app) + self.app = app self.folder_manager = folders.FolderManager() self.role_manager = roles.RoleManager(app) + self.ld_manager = library_datasets.LibraryDatasetsManager(app) @expose_api_anonymous def show(self, trans, id, **kwd): """ - show( self, trans, id, **kwd ) - * GET /api/libraries/datasets/{encoded_dataset_id} - Displays information about the dataset identified by the encoded ID. + Show the details of a library dataset. - :param id: the encoded id of the dataset to query + * GET /api/libraries/datasets/{encoded_dataset_id} + + :param id: the encoded id of the library dataset to query :type id: an encoded id string - :returns: detailed dataset information from base controller + :returns: detailed library dataset information :rtype: dictionary - - .. seealso:: :attr:`galaxy.web.base.controller.UsesLibraryMixinItems.get_library_dataset` """ - try: - library_dataset = self.get_library_dataset(trans, id=id, check_ownership=False, check_accessible=True) - except Exception: - raise exceptions.ObjectNotFound('Requested library_dataset was not found.') - - current_user_roles = trans.get_current_user_roles() - - tag_manager = tags.GalaxyTagManager(trans.sa_session) - - # Build the full path for breadcrumb purposes. - full_path = self._build_path(trans, library_dataset.folder) - dataset_item = (trans.security.encode_id(library_dataset.id), library_dataset.name) - full_path.insert(0, dataset_item) - full_path = full_path[::-1] - - # Find expired versions of the library dataset - expired_ldda_versions = [] - for expired_ldda in library_dataset.expired_datasets: - expired_ldda_versions.append((trans.security.encode_id(expired_ldda.id), expired_ldda.name)) - - rval = trans.security.encode_all_ids(library_dataset.to_dict()) - if len(expired_ldda_versions) > 0: - rval['has_versions'] = True - rval['expired_versions'] = expired_ldda_versions - rval['deleted'] = library_dataset.deleted - rval['folder_id'] = 'F' + rval['folder_id'] - rval['full_path'] = full_path - rval['file_size'] = util.nice_size(int(library_dataset.library_dataset_dataset_association.get_size())) - rval['date_uploaded'] = library_dataset.library_dataset_dataset_association.create_time.strftime("%Y-%m-%d %I:%M %p") - rval['can_user_modify'] = trans.app.security_agent.can_modify_library_item(current_user_roles, library_dataset) or trans.user_is_admin() - rval['is_unrestricted'] = trans.app.security_agent.dataset_is_public(library_dataset.library_dataset_dataset_association.dataset) - rval['tags'] = tag_manager.get_tags_str(library_dataset.library_dataset_dataset_association.tags) - - # Manage dataset permission is always attached to the dataset itself, not the the ld or ldda to maintain consistency - rval['can_user_manage'] = trans.app.security_agent.can_manage_dataset(current_user_roles, library_dataset.library_dataset_dataset_association.dataset) or trans.user_is_admin() - return rval + ld = self.ld_manager.get(trans, managers_base.decode_id(self.app, id)) + serialized = self.ld_manager.serialize(trans, ld) + return serialized @expose_api_anonymous def show_version(self, trans, encoded_dataset_id, encoded_ldda_id, **kwd): """ - show_version( self, trans, encoded_dataset_id, encoded_ldda_id, **kwd ): - * GET /api/libraries/datasets/{encoded_dataset_id}/versions/{encoded_ldda_id} - Displays information about specific version of the library_dataset (i.e. ldda). + Display a specific version of a library dataset (i.e. ldda). - :param encoded_dataset_id: the encoded id of the dataset to query + * GET /api/libraries/datasets/{encoded_dataset_id}/versions/{encoded_ldda_id} + + :param encoded_dataset_id: the encoded id of the related library dataset :type encoded_dataset_id: an encoded id string :param encoded_ldda_id: the encoded id of the ldda to query :type encoded_ldda_id: an encoded id string - :rtype: dictionary :returns: dict of ldda's details + :rtype: dictionary + + :raises: ObjectNotFound """ - try: - library_dataset = self.get_library_dataset(trans, id=encoded_dataset_id, check_ownership=False, check_accessible=True) - except Exception: - raise exceptions.ObjectNotFound('Requested library_dataset was not found.') + library_dataset = self.ld_manager.get(trans, managers_base.decode_id(self.app, encoded_dataset_id)) try: ldda = self.get_library_dataset_dataset_association(trans, id=encoded_ldda_id, check_ownership=False, check_accessible=False) @@ -121,10 +86,9 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): @expose_api def show_roles(self, trans, encoded_dataset_id, **kwd): """ - show_roles( self, trans, id, **kwd ): + Display information about current or available roles for a given dataset permission. + * GET /api/libraries/datasets/{encoded_dataset_id}/permissions - Displays information about current or available roles - for a given dataset permission. :param encoded_dataset_id: the encoded id of the dataset to query :type encoded_dataset_id: an encoded id string @@ -132,16 +96,14 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): :param scope: either 'current' or 'available' :type scope: string + :returns: either dict of current roles for all permission types + or dict of available roles to choose from (is the same for any permission type) :rtype: dictionary - :returns: either dict of current roles for all permission types or - dict of available roles to choose from (is the same for any permission type) - """ + :raises: InsufficientPermissionsException + """ current_user_roles = trans.get_current_user_roles() - try: - library_dataset = self.get_library_dataset(trans, id=encoded_dataset_id, check_ownership=False, check_accessible=False) - except Exception as e: - raise exceptions.ObjectNotFound('Requested dataset was not found.' + str(e)) + library_dataset = self.ld_manager.get(trans, managers_base.decode_id(self.app, encoded_dataset_id)) dataset = library_dataset.library_dataset_dataset_association.dataset # User has to have manage permissions permission in order to see the roles. @@ -203,11 +165,29 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): return dict(access_dataset_roles=access_dataset_role_list, modify_item_roles=modify_item_role_list, manage_dataset_roles=manage_dataset_role_list) + @expose_api + def update(self, trans, encoded_dataset_id, payload=None, **kwd): + """Update the given library dataset (the latest linked ldda). + + * PATCH /api/libraries/datasets/{encoded_dataset_id} + + :param encoded_dataset_id: the encoded id of the library dataset to update + :type encoded_dataset_id: an encoded id string + + :returns: detailed library dataset information + :rtype: dictionary + """ + library_dataset = self.ld_manager.get(trans, managers_base.decode_id(self.app, encoded_dataset_id)) + updated = self.ld_manager.update(trans, library_dataset, payload) + serialized = self.ld_manager.serialize(trans, updated) + return serialized + @expose_api def update_permissions(self, trans, encoded_dataset_id, payload=None, **kwd): """ + Set permissions of the given library dataset to the given role ids. + *POST /api/libraries/datasets/{encoded_dataset_id}/permissions - Set permissions of the given dataset to the given role ids. :param encoded_dataset_id: the encoded id of the dataset to update permissions of :type encoded_dataset_id: an encoded id string @@ -222,6 +202,7 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): :param modify_ids[]: list of Role.id defining roles that should have modify permission on the library dataset item :type modify_ids[]: string or list :type: dictionary + :returns: dict of current roles for all available permission types :rtype: dictionary @@ -230,10 +211,8 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): """ if payload: kwd.update(payload) - try: - library_dataset = self.get_library_dataset(trans, id=encoded_dataset_id, check_ownership=False, check_accessible=False) - except Exception as e: - raise exceptions.ObjectNotFound('Requested dataset was not found.' + str(e)) + library_dataset = self.ld_manager.get(trans, managers_base.decode_id(self.app, encoded_dataset_id)) + # Some permissions are attached directly to the underlying dataset. dataset = library_dataset.library_dataset_dataset_association.dataset current_user_roles = trans.get_current_user_roles() can_manage = trans.app.security_agent.can_manage_dataset(current_user_roles, dataset) or trans.user_is_admin() @@ -266,7 +245,7 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): trans.app.security_agent.make_dataset_public(dataset) else: for role_id in new_access_roles_ids: - role = self.role_manager.get(trans, self.__decode_id(trans, role_id, 'role')) + role = self.role_manager.get(trans, managers_base.decode_id(self.app, role_id)) # Check whether role is in the set of allowed roles valid_roles, total_roles = trans.app.security_agent.get_valid_roles(trans, dataset) if role in valid_roles: @@ -288,7 +267,7 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): active_access_roles = dataset.get_access_roles(trans) for role_id in new_manage_roles_ids: - role = self.role_manager.get(trans, self.__decode_id(trans, role_id, 'role')) + role = self.role_manager.get(trans, managers_base.decode_id(self.app, role_id)) # Check whether role is in the set of access roles if role in active_access_roles: valid_manage_roles.append(role) @@ -310,7 +289,7 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): active_access_roles = dataset.get_access_roles(trans) for role_id in new_modify_roles_ids: - role = self.role_manager.get(trans, self.__decode_id(trans, role_id, 'role')) + role = self.role_manager.get(trans, managers_base.decode_id(self.app, role_id)) # Check whether role is in the set of access roles if role in active_access_roles: valid_modify_roles.append(role) @@ -332,62 +311,59 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): @expose_api def delete(self, trans, encoded_dataset_id, **kwd): """ - delete( self, trans, encoded_dataset_id, **kwd ): + Mark the dataset deleted or undeleted. + * DELETE /api/libraries/datasets/{encoded_dataset_id} - Marks the dataset deleted or undeleted based on the value - of the undelete flag. - If the flag is not present it is considered False and the - item is marked deleted. :param encoded_dataset_id: the encoded id of the dataset to change :type encoded_dataset_id: an encoded id string + :param undelete: flag whether to undeleted instead of deleting + :type undelete: bool :returns: dict containing information about the dataset :rtype: dictionary """ undelete = util.string_as_bool(kwd.get('undelete', False)) - try: - dataset = self.get_library_dataset(trans, id=encoded_dataset_id, check_ownership=False, check_accessible=False) - except Exception as e: - raise exceptions.ObjectNotFound('Requested dataset was not found.' + str(e)) + library_dataset = self.ld_manager.get(trans, managers_base.decode_id(self.app, encoded_dataset_id)) current_user_roles = trans.get_current_user_roles() - allowed = trans.app.security_agent.can_modify_library_item(current_user_roles, dataset) + allowed = trans.app.security_agent.can_modify_library_item(current_user_roles, library_dataset) if (not allowed) and (not trans.user_is_admin()): raise exceptions.InsufficientPermissionsException('You do not have proper permissions to delete this dataset.') if undelete: - dataset.deleted = False + library_dataset.deleted = False else: - dataset.deleted = True + library_dataset.deleted = True - trans.sa_session.add(dataset) + trans.sa_session.add(library_dataset) trans.sa_session.flush() - rval = trans.security.encode_all_ids(dataset.to_dict()) - nice_size = util.nice_size(int(dataset.library_dataset_dataset_association.get_size())) + rval = trans.security.encode_all_ids(library_dataset.to_dict()) + nice_size = util.nice_size(int(library_dataset.library_dataset_dataset_association.get_size())) rval['file_size'] = nice_size - rval['update_time'] = dataset.update_time.strftime("%Y-%m-%d %I:%M %p") - rval['deleted'] = dataset.deleted + rval['update_time'] = library_dataset.update_time.strftime("%Y-%m-%d %I:%M %p") + rval['deleted'] = library_dataset.deleted rval['folder_id'] = 'F' + rval['folder_id'] return rval @expose_api def load(self, trans, payload=None, **kwd): """ + Load dataset(s) from the given source into the library. + * POST /api/libraries/datasets - Load dataset from the given source into the library. - Source can be: - user directory - root folder specified in galaxy.ini as "$user_library_import_dir" - example path: path/to/galaxy/$user_library_import_dir/user@example.com/{user can browse everything here} - the folder with the user login has to be created beforehand - (admin)import directory - root folder specified in galaxy ini as "$library_import_dir" - example path: path/to/galaxy/$library_import_dir/{admin can browse everything here} - (admin)any absolute or relative path - option allowed with "allow_library_path_paste" in galaxy.ini :param payload: dictionary structure containing: :param encoded_folder_id: the encoded id of the folder to import dataset(s) to :type encoded_folder_id: an encoded id string :param source: source the datasets should be loaded from + Source can be: + user directory - root folder specified in galaxy.ini as "$user_library_import_dir" + example path: path/to/galaxy/$user_library_import_dir/user@example.com/{user can browse everything here} + the folder with the user login has to be created beforehand + (admin)import directory - root folder specified in galaxy ini as "$library_import_dir" + example path: path/to/galaxy/$library_import_dir/{admin can browse everything here} + (admin)any absolute or relative path - option allowed with "allow_library_path_paste" in galaxy.ini :type source: str :param link_data: flag whether to link the dataset to data or copy it to Galaxy, defaults to copy while linking is set to True all symlinks will be resolved _once_ @@ -402,8 +378,10 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): :param tag_using_filenames: flag whether to generate dataset tags from filenames :type tag_using_filenames: bool :type dictionary + :returns: dict containing information about the created upload job :rtype: dictionary + :raises: RequestParameterMissingException, AdminRequiredException, ConfigDoesNotAllowException, RequestParameterInvalidException InsufficientPermissionsException, ObjectNotFound """ @@ -510,10 +488,10 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): # TODO convert to expose_api def download(self, trans, format, **kwd): """ - download( self, trans, format, **kwd ) + Download requested datasets (identified by encoded IDs) in requested format. + * GET /api/libraries/datasets/download/{format} * POST /api/libraries/datasets/download/{format} - Downloads requested datasets (identified by encoded IDs) in requested format. example: ``GET localhost:8080/api/libraries/datasets/download/tbz?ld_ids%255B%255D=a0d84b45643a2678&ld_ids%255B%255D=fe38c84dcd46c828`` @@ -526,8 +504,8 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): :param folder_ids[]: an array of encoded folder ids :type folder_ids[]: an array - :rtype: file :returns: either archive with the requested datasets packed inside or a single uncompressed dataset + :rtype: file :raises: MessageException, ItemDeletionException, ItemAccessibilityException, HTTPBadRequest, OSError, IOError, ObjectNotFound """ @@ -636,7 +614,8 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): zpath = os.path.split(path)[-1] # comes as base_name/fname outfname, zpathext = os.path.splitext(zpath) - if is_composite: # need to add all the components from the extra_files_path to the zip + if is_composite: + # need to add all the components from the extra_files_path to the zip if zpathext == '': zpath = '%s.html' % zpath # fake the real nature of the html file try: @@ -671,10 +650,9 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): log.exception("Requested dataset %s does not exist on the host.", fpath) raise exceptions.ObjectNotFound("Requested dataset not found.") except Exception as e: - log.exception("Unable to add %s to temporary library download archive %s", fname, outfname) + log.exception("Unable to add %s to temporary library download archive %s" % (fname, outfname)) raise exceptions.InternalServerError("Unable to add dataset to temporary library download archive . " + str(e)) - - else: # simple case + else: try: if format == 'zip': archive.add(ldda.dataset.file_name, path) @@ -724,39 +702,3 @@ class LibraryDatasetsController(BaseAPIController, UsesVisualizationMixin): raise exceptions.InternalServerError("This dataset contains no content.") else: raise exceptions.RequestParameterInvalidException("Wrong format parameter specified") - - def _build_path(self, trans, folder): - """ - Search the path upwards recursively and load the whole route of - names and ids for breadcrumb building purposes. - - :param folder: current folder for navigating up - :param type: Galaxy LibraryFolder - - :returns: list consisting of full path to the library - :type: list - """ - path_to_root = [] - # We are almost in root - if folder.parent_id is None: - path_to_root.append(('F' + trans.security.encode_id(folder.id), folder.name)) - else: - # We add the current folder and traverse up one folder. - path_to_root.append(('F' + trans.security.encode_id(folder.id), folder.name)) - upper_folder = trans.sa_session.query(trans.app.model.LibraryFolder).get(folder.parent_id) - path_to_root.extend(self._build_path(trans, upper_folder)) - return path_to_root - - def __decode_id(self, trans, encoded_id, object_name=None): - """ - Try to decode the id. - - :param object_name: Name of the object the id belongs to. (optional) - :type object_name: str - """ - try: - return trans.security.decode_id(encoded_id) - except TypeError: - raise exceptions.MalformedId('Malformed %s id specified, unable to decode.' % object_name if object_name is not None else '') - except ValueError: - raise exceptions.MalformedId('Wrong %s id specified, unable to decode.' % object_name if object_name is not None else '') diff --git a/lib/galaxy/webapps/galaxy/buildapp.py b/lib/galaxy/webapps/galaxy/buildapp.py index d009bb6a9f9..46a8e80600d 100644 --- a/lib/galaxy/webapps/galaxy/buildapp.py +++ b/lib/galaxy/webapps/galaxy/buildapp.py @@ -651,43 +651,49 @@ def populate_api_routes(webapp, app): webapp.mapper.connect('show_ld_item', '/api/libraries/datasets/{id}', - controller='lda_datasets', + controller='library_datasets', action='show', conditions=dict(method=["GET"])) webapp.mapper.connect('load_ld', '/api/libraries/datasets/', - controller='lda_datasets', + controller='library_datasets', action='load', conditions=dict(method=["POST"])) webapp.mapper.connect('show_version_of_ld_item', '/api/libraries/datasets/{encoded_dataset_id}/versions/{encoded_ldda_id}', - controller='lda_datasets', + controller='library_datasets', action='show_version', conditions=dict(method=["GET"])) - webapp.mapper.connect('show_legitimate_lda_roles', + webapp.mapper.connect('update_ld', + '/api/libraries/datasets/{encoded_dataset_id}', + controller='library_datasets', + action='update', + conditions=dict(method=["PATCH"])) + + webapp.mapper.connect('show_legitimate_ld_roles', '/api/libraries/datasets/{encoded_dataset_id}/permissions', - controller='lda_datasets', + controller='library_datasets', action='show_roles', conditions=dict(method=["GET"])) - webapp.mapper.connect('update_lda_permissions', + webapp.mapper.connect('update_ld_permissions', '/api/libraries/datasets/{encoded_dataset_id}/permissions', - controller='lda_datasets', + controller='library_datasets', action='update_permissions', conditions=dict(method=["POST"])) - webapp.mapper.connect('delete_lda_item', + webapp.mapper.connect('delete_ld_item', '/api/libraries/datasets/{encoded_dataset_id}', - controller='lda_datasets', + controller='library_datasets', action='delete', conditions=dict(method=["DELETE"])) - webapp.mapper.connect('download_lda_items', + webapp.mapper.connect('download_ld_items', '/api/libraries/datasets/download/{format}', - controller='lda_datasets', + controller='library_datasets', action='download', conditions=dict(method=["POST", "GET"])) diff --git a/static/maps/mvc/library/library-dataset-view.js.map b/static/maps/mvc/library/library-dataset-view.js.map index 335c2fdb2f0..d3c32d775b1 100644 --- a/static/maps/mvc/library/library-dataset-view.js.map +++ b/static/maps/mvc/library/library-dataset-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-dataset-view.js","sources":["../../../src/mvc/library/library-dataset-view.js"],"names":["define","mod_toastr","mod_library_model","mod_utils","mod_select","LibraryDatasetView","Backbone","View","extend","el","model","options","events","click .toolbtn_modify_dataset","click .toolbtn_cancel_modifications","click .toolbtn-download-dataset","click .toolbtn-import-dataset","click .toolbtn-share-dataset","click .btn-copy-link-to-clipboard","click .btn-make-private","click .btn-remove-restrictions","click .toolbtn_save_permissions","click .toolbtn_save_modifications","select_genome","select_extension","list_extensions","auto","id","text","description","list_genomes","initialize","this","_","fetchExtAndGenomes","fetchDataset","Item","that","fetch","success","show_permissions","showPermissions","show_version","fetchVersion","render","error","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","$","remove","template","templateDataset","$el","html","item","get","tooltip","ldda_id","ldda","Ldda","url","urlRoot","renderVersion","templateVersion","enableModification","templateModifyDataset","renderSelectBoxes","genome_build","file_ext","downloadDataset","root","data","ld_ids","processDownload","method","param","inputs","each","split","pair","appendTo","submit","info","importIntoHistory","refreshUserHistoriesList","self","templateBulkImportInModal","modal","show","closing_events","title","body","histories","models","buttons","Import","importCurrentIntoHistory","Close","hide","callback","GalaxyHistories","length","warning","window","location","disableButton","new_history_name","val","post","name","done","new_history","processImportToHistory","fail","always","enableButton","history_id","find","historyItem","HistoryItem","jQuery","getJSON","save","content","source","shareDataset","goBack","undefined","fetched_permissions","set","access_dataset_roles","is_unrestricted","is_admin","user","isAdmin","templateDatasetPermissions","prepareSelectBoxes","css","_serializeRoles","role_list","selected_roles","i","push","selected_access_dataset_roles","selected_modify_item_roles","selected_manage_dataset_roles","modify_item_roles","manage_dataset_roles","access_select_options","minimumInputLength","multiple","placeholder","container","ajax","dataType","quietMillis","term","page","q","page_limit","results","more","total","roles","formatResult","role","type","formatSelection","initSelection","element","initialData","join","dropdownCssClass","modify_select_options","manage_select_options","accessSelectObject","modifySelectObject","manageSelectObject","templateAccessSelect","select2","comingSoon","copyToClipboard","href","history","lastIndexOf","substr","prompt","makeDatasetPrivate","removeDatasetRestrictions","_extractIds","roles_list","ids_list","savePermissions","access_ids","manage_ids","modify_ids","access_ids[]","manage_ids[]","modify_ids[]","datatypes","key","extension","description_url","sort","a","b","unshift","genomes","current_genome","current_ext","value"],"mappings":"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,gKACE,wCACA,qBACF,aACF,SACF,UAGA,8BACE,2DACE,OACE,oHACA,6CACF,QACA,oCACE,OACE,iCACA,iDACF,QACF,UACA,wCACE,OACE,oCACA,qDACF,QACF,UACA,qCACE,OACE,4BACA,kDACF,QACF,UACA,yCACE,OACE,2CACA,sDACF,QACF,UACA,uCACE,OACE,mCACA,oDACF,QACF,UACA,+CACE,OACE,kCACA,wEACF,QACF,UACA,kDACE,OACE,qCACA,2EACF,QACF,UACA,4CACE,OACE,yCACA,qEACF,QACF,UACA,iDACE,OACE,oCACA,0EACF,QACF,UACA,mCACE,OACE,+BACA,4DACF,QACF,UACA,sCACE,OACE,2CACA,+DACF,QACF,UACA,qCACE,OACE,iDACA,8DACF,QACF,UACA,gCACE,OACE,4BACA,yDACF,QACF,UACF,WAEF,QACE,qBACA,SACF,SAEA,wCACE,QACE,6BACA,OACE,iEACE,wKACF,WACF,OACF,SACF,UAEA,SAEA,UACEyH,KAAK,MAGT5G,gBAAkB,WAChB,MAAOpC,GAAEuB,UAET,wCACE,6BACE,2EACE,qJACE,+CACA,uBACF,YACF,MACF,SAGA,0BACE,6EACA,4DACE,uCACE,2GACF,iBACE,gFACF,UACF,YACF,QAEA,8HAEA,8BACE,2DACE,OACE,2EACA,6CACF,QACA,oCACE,OACE,iCACA,iDACF,QACF,UACA,wCACE,OACE,oCACA,qDACF,QACF,UACA,qCACE,OACE,4BACA,kDACF,QACF,UACA,yCACE,OACE,2CACA,sDACF,QACF,UACA,uCACE,OACE,mCACA,oDACF,QACF,UACA,+CACE,OACE,kCACA,wEACF,QACF,UACA,kDACE,OACE,qCACA,2EACF,QACF,UACA,4CACE,OACE,yCACA,qEACF,QACF,UACA,iDACE,OACE,oCACA,0EACF,QACF,UACA,mCACE,OACE,+BACA,4DACF,QACF,UACA,sCACE,OACE,2CACA,+DACF,QACF,UACA,qCACE,OACE,iDACA,8DACF,QACF,UACA,gCACE,OACE,4BACA,yDACF,QACF,UACF,WACA,QACE,qBACA,SACF,SAEF,SAEF,UACEyH,KAAK,MAGT1G,sBAAwB,WACtB,MAAOtC,GAAEuB,UAET,wCACE,6BACE,kLACE,oCACA,eACF,YACA,8KACE,uCACA,aACF,YACF,SAGA,0BACE,6EACA,4DACE,uCACE,2GACF,iBACE,gFACF,UACF,YACF,QAEA,8BACE,wGACA,2DACE,OACE,oHACA,oIACF,QACA,OACE,iCACA,OACE,0EACF,QACF,QACA,OACE,oCACA,OACE,oEACF,QACF,QACA,OACE,4BACA,kDACF,QACA,OACE,2CACA,sDACF,QACA,OACE,mCACA,oDACF,QACA,mBACE,kCACA,wEACF,QACE,qCACA,yDACE,2EACF,iBACE,+BACF,UACF,QACA,OACE,yCACA,qEACF,QACA,OACE,oCACA,0EACF,QACA,OACE,+BACA,4DACF,QACA,OACE,iDACA,8DACF,QACA,OACE,2CACA,+DACF,QAEA,gCACE,OACE,4BACA,yDACF,QACF,UACF,WACA,QACE,qBACA,SACF,SACF,SAEF,UACEyH,KAAK,MAGTpC,2BAA6B,WAC3B,MAAO5G,GAAEuB,UAET,wCACE,6BACE,mDACE,6JACE,4CACA,0BACF,YACF,OACA,2EACE,mJACE,qCACA,wBACF,YACF,MACF,SAGA,0BACE,6EACE,4DACE,uCACE,2GACF,iBACE,gFACF,UACJ,YACF,QAEA,sDACA,oCACE,wBACE,yKACF,iBACE,+IACF,UACF,SACA,8BACE,uCACA,kDACA,mEACA,8KACA,QACA,uCACA,+LACA,4CACE,8DACE,yLACE,oCACA,4BACF,YACF,OACF,iBACE,4FACA,gKACE,wCACA,qBACA,YACF,gDACE,iLACE,kCACA,qBACF,YACF,OACF,UACA,6CACA,mEACA,iDACE,qFACA,mGACA,mGACF,SACA,4DACA,mEACA,iDACE,uLACF,SACA,iLACE,uCACA,aACF,YACF,SAEF,UACEyH,KAAK,MAGTrF,0BAA2B,WACzB,MAAO3D,GAAEuB,UACT,QACE,mCACE,mBACA,qHACE,8CACE,mGACF,YACF,YACF,SACA,mCACE,kBACA,4GACA,WACF,SACF,UACEyH,KAAK,MAITO,qBAAsB,WACpB,MAAOvJ,GAAEuB,UACT,uCACE,2CACE,iEACF,YACF,aACEyH,KAAK,OAKX,QACI5K,mBAAoBA"} \ No newline at end of file +{"version":3,"file":"library-dataset-view.js","sources":["../../../src/mvc/library/library-dataset-view.js"],"names":["define","mod_toastr","mod_library_model","mod_utils","mod_select","LibraryDatasetView","Backbone","View","extend","el","model","options","defaults","edit_mode","events","click .toolbtn_modify_dataset","click .toolbtn_cancel_modifications","click .toolbtn-download-dataset","click .toolbtn-import-dataset","click .btn-copy-link-to-clipboard","click .btn-make-private","click .btn-remove-restrictions","click .toolbtn_save_permissions","click .toolbtn_save_modifications","select_genome","select_extension","list_extensions","auto","id","text","description","list_genomes","initialize","this","_","fetchExtAndGenomes","fetchDataset","Item","that","fetch","success","show_permissions","showPermissions","show_version","fetchVersion","render","error","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","$","remove","template","templateDataset","$el","html","item","get","tooltip","ldda_id","ldda","Ldda","url","urlRoot","renderVersion","templateVersion","enableModification","templateModifyDataset","renderSelectBoxes","genome_build","file_ext","downloadDataset","root","data","ld_ids","processDownload","method","param","inputs","each","split","pair","appendTo","submit","info","importIntoHistory","refreshUserHistoriesList","self","templateBulkImportInModal","modal","show","closing_events","title","body","histories","models","buttons","Import","importCurrentIntoHistory","Close","hide","callback","GalaxyHistories","length","warning","window","location","disableButton","new_history_name","val","post","name","done","new_history","processImportToHistory","fail","always","enableButton","history_id","find","historyItem","HistoryItem","jQuery","getJSON","save","content","source","goBack","undefined","fetched_permissions","set","access_dataset_roles","is_unrestricted","is_admin","user","isAdmin","templateDatasetPermissions","prepareSelectBoxes","css","_serializeRoles","role_list","selected_roles","i","push","selected_access_dataset_roles","selected_modify_item_roles","selected_manage_dataset_roles","modify_item_roles","manage_dataset_roles","access_select_options","minimumInputLength","multiple","placeholder","container","ajax","dataType","quietMillis","term","page","q","page_limit","results","more","total","roles","formatResult","role","type","formatSelection","initSelection","element","initialData","join","dropdownCssClass","modify_select_options","manage_select_options","accessSelectObject","modifySelectObject","manageSelectObject","templateAccessSelect","select2","saveModifications","is_changed","ld","new_name","new_info","new_genome_build","new_ext","dataset_view","patch","copyToClipboard","href","history","lastIndexOf","substr","prompt","makeDatasetPrivate","removeDatasetRestrictions","_extractIds","roles_list","ids_list","savePermissions","access_ids","manage_ids","modify_ids","access_ids[]","manage_ids[]","modify_ids[]","datatypes","key","extension","description_url","sort","a","b","unshift","genomes","current_genome","current_ext","value"],"mappings":"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CZvL,EAAKP,aAAaqH,MACdxH,GAAUiM,EAAQP,GAAK,GACvBzL,KAAUgM,EAAQP,GAAK,IAG/BhL,GAAKP,aAAa0L,KAAK,SAASC,EAAGC,GAC/B,MAAOD,GAAE9L,GAAK+L,EAAE/L,GAAK,EAAI8L,EAAE9L,GAAK+L,EAAE/L,GAAK,GAAK,QAOxD6C,kBAAmB,SAAS9D,GAK1B,GAAI2B,GAAOL,KACP6L,EAAiB,IACjBC,EAAc,MACK,oBAAZpN,KAC2B,mBAAzBA,GAAQ+D,eACjBoJ,EAAiBnN,EAAQ+D,cAEK,mBAArB/D,GAAQgE,WACjBoJ,EAAcpN,EAAQgE,WAG1B1C,KAAKT,cAAgB,GAAIpB,GAAWG,MAChCwI,IAAK,wBACLjE,KAAMxC,EAAKP,aACX+H,UAAWxH,EAAKqB,IAAIiE,KAAK,0BACzBoG,MAAOF,IAEX7L,KAAKR,iBAAmB,GAAIrB,GAAWG,MACrCwI,IAAK,2BACLjE,KAAMxC,EAAKZ,gBACXoI,UAAWxH,EAAKqB,IAAIiE,KAAK,6BACzBoG,MAAOD,KAIXrK,gBAAkB,WAChB,MAAOxB,GAAEuB,UAET,wCACE,6BACE,0KACE,uCACA,iBACF,YACA,mLACE,mCACA,mBACF,YACA,2CACE,2KACE,qCACA,eACF,YACF,UACA,2CACE,uFACE,8KACE,oCACA,oBACF,YACF,OACF,UACF,SAGF,0BACE,6EACA,4DACE,uCACE,2GACF,iBACE,gFACF,UACF,YACF,QAEA,2CACE,iCACE,6FACA,gKACE,wCACA,qBACF,aACF,SACF,UAGA,8BACE,2DACE,OACE,oHACA,6CACF,QACA,oCACE,OACE,iCACA,iDACF,QACF,UACA,wCACE,OACE,oCACA,qDACF,QACF,UACA,qCACE,OACE,4BACA,kDACF,QACF,UACA,yCACE,OACE,2CACA,sDACF,QACF,UACA,uCACE,OACE,mCACA,oDACF,QACF,UACA,+CACE,OACE,kCACA,wEACF,QACF,UACA,kDACE,OACE,qCACA,2EACF,QACF,UACA,4CACE,OACE,yCACA,qEACF,QACF,UACA,iDACE,OACE,oCACA,0EACF,QACF,UACA,mCACE,OACE,+BACA,4DACF,QACF,UACA,sCACE,OACE,mCACA,+DACF,QACF,UACA,qCACE,OACE,kCACA,8DACF,QACF,UACA,gCACE,OACE,4BACA,yDACF,QACF,UACF,WAEF,QACE,qBACA,SACF,SAEA,wCACE,QACE,6BACA,OACE,iEACE,wKACF,WACF,OACF,SACF,UAEA,SAEA,UACEwH,KAAK,MAGT3G,gBAAkB,WAChB,MAAOpC,GAAEuB,UAET,wCACE,6BACE,2EACE,qJACE,+CACA,uBACF,YACF,MACF,SAGA,0BACE,6EACA,4DACE,uCACE,2GACF,iBACE,gFACF,UACF,YACF,QAEA,8HAEA,8BACE,2DACE,OACE,2EACA,6CACF,QACA,oCACE,OACE,iCACA,iDACF,QACF,UACA,wCACE,OACE,oCACA,qDACF,QACF,UACA,qCACE,OACE,4BACA,kDACF,QACF,UACA,yCACE,OACE,2CACA,sDACF,QACF,UACA,uCACE,OACE,mCACA,oDACF,QACF,UACA,+CACE,OACE,kCACA,wEACF,QACF,UACA,kDACE,OACE,qCACA,2EACF,QACF,UACA,4CACE,OACE,yCACA,qEACF,QACF,UACA,iDACE,OACE,oCACA,0EACF,QACF,UACA,mCACE,OACE,+BACA,4DACF,QACF,UACA,sCACE,OACE,2CACA,+DACF,QACF,UACA,qCACE,OACE,iDACA,8DACF,QACF,UACA,gCACE,OACE,4BACA,yDACF,QACF,UACF,WACA,QACE,qBACA,SACF,SAEF,SAEF,UACEwH,KAAK,MAGTzG,sBAAwB,WACtB,MAAOtC,GAAEuB,UAET,wCACE,6BACE,kLACE,oCACA,eACF,YACA,8KACE,uCACA,aACF,YACF,SAGA,0BACE,6EACA,4DACE,uCACE,2GACF,iBACE,gFACF,UACF,YACF,QAEA,8BACE,2DACE,OACE,oHACA,oIACF,QACA,OACE,iCACA,OACE,0EACF,QACF,QACA,OACE,oCACA,OACE,oEACF,QACF,QACA,OACE,4BACA,kDACF,QACA,OACE,2CACA,sDACF,QACA,OACE,mCACA,oDACF,QACA,mBACE,kCACA,wEACF,QACE,qCACA,yDACE,2EACF,iBACE,+BACF,UACF,QACA,OACE,yCACA,qEACF,QACA,OACE,oCACA,0EACF,QACA,OACE,+BACA,4DACF,QACA,OACE,mCACA,+DACF,QACA,OACE,yCACA,8IACF,QAEA,gCACE,OACE,4BACA,yDACF,QACF,UACF,WACA,QACE,qBACA,SACF,SACF,SAEF,UACEwH,KAAK,MAGTpC,2BAA6B,WAC3B,MAAO3G,GAAEuB,UAET,wCACE,6BACE,mDACE,6JACE,4CACA,0BACF,YACF,OACA,2EACE,mJACE,qCACA,wBACF,YACF,MACF,SAGA,0BACE,6EACE,4DACE,uCACE,2GACF,iBACE,gFACF,UACJ,YACF,QAEA,sDACA,oCACE,wBACE,yKACF,iBACE,+IACF,UACF,SACA,8BACE,uCACA,kDACA,mEACA,8KACA,QACA,uCACA,+LACA,4CACE,8DACE,yLACE,oCACA,4BACF,YACF,OACF,iBACE,4FACA,gKACE,wCACA,qBACA,YACF,gDACE,iLACE,kCACA,qBACF,YACF,OACF,UACA,6CACA,mEACA,iDACE,qFACA,mGACA,mGACF,SACA,4DACA,mEACA,iDACE,uLACF,SACA,iLACE,uCACA,aACF,YACF,SAEF,UACEwH,KAAK,MAGTpF,0BAA2B,WACzB,MAAO3D,GAAEuB,UACT,QACE,mCACE,mBACA,qHACE,8CACE,mGACF,YACF,YACF,SACA,mCACE,kBACA,4GACA,WACF,SACF,UACEwH,KAAK,MAITO,qBAAsB,WACpB,MAAOtJ,GAAEuB,UACT,uCACE,2CACE,iEACF,YACF,aACEwH,KAAK,OAKX,QACI5K,mBAAoBA"} \ No newline at end of file diff --git a/static/maps/mvc/library/library-folder-view.js.map b/static/maps/mvc/library/library-folder-view.js.map index f7010a57252..a94597b660d 100644 --- a/static/maps/mvc/library/library-folder-view.js.map +++ b/static/maps/mvc/library/library-folder-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-folder-view.js","sources":["../../../src/mvc/library/library-folder-view.js"],"names":["define","mod_toastr","mod_library_model","mod_select","FolderView","Backbone","View","extend","el","model","options","events","click .toolbtn_save_permissions","initialize","this","_","id","fetchFolder","FolderAsModel","that","fetch","success","show_permissions","showPermissions","render","error","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","$","remove","template","templateFolder","$el","html","item","get","tooltip","shareFolder","info","goBack","is_admin","user","isAdmin","templateFolderPermissions","folder","self","root","done","fetched_permissions","prepareSelectBoxes","fail","css","_serializeRoles","role_list","selected_roles","i","length","push","selected_add_item_roles","add_library_item_role_list","selected_manage_folder_roles","manage_folder_role_list","selected_modify_folder_roles","modify_folder_role_list","addSelectObject","_createSelectOptions","manageSelectObject","modifySelectObject","init_data","select_options","minimumInputLength","multiple","placeholder","container","find","ajax","url","dataType","quietMillis","data","term","page","q","page_limit","results","more","total","roles","formatResult","role","name","type","formatSelection","initSelection","element","callback","val","split","each","initialData","join","dropdownCssClass","comingSoon","warning","copyToClipboard","href","history","location","lastIndexOf","substr","window","prompt","_extractIds","roles_list","ids_list","savePermissions","add_ids","select2","manage_ids","modify_ids","post","add_ids[]","manage_ids[]","modify_ids[]"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"library-folder-view.js","sources":["../../../src/mvc/library/library-folder-view.js"],"names":["define","mod_toastr","mod_library_model","mod_select","FolderView","Backbone","View","extend","el","model","options","events","click .toolbtn_save_permissions","initialize","this","_","id","fetchFolder","FolderAsModel","that","fetch","success","show_permissions","showPermissions","error","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","goBack","$","remove","is_admin","user","isAdmin","template","templateFolderPermissions","$el","html","folder","self","get","root","done","fetched_permissions","prepareSelectBoxes","fail","tooltip","css","_serializeRoles","role_list","selected_roles","i","length","push","selected_add_item_roles","add_library_item_role_list","selected_manage_folder_roles","manage_folder_role_list","selected_modify_folder_roles","modify_folder_role_list","addSelectObject","_createSelectOptions","manageSelectObject","modifySelectObject","init_data","select_options","minimumInputLength","multiple","placeholder","container","find","ajax","url","dataType","quietMillis","data","term","page","q","page_limit","results","more","total","roles","formatResult","role","name","type","formatSelection","initSelection","element","callback","val","split","each","item","initialData","join","dropdownCssClass","_extractIds","roles_list","ids_list","savePermissions","add_ids","select2","manage_ids","modify_ids","post","add_ids[]","manage_ids[]","modify_ids[]"],"mappings":"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"} \ No newline at end of file diff --git a/static/maps/mvc/library/library-foldertoolbar-view.js.map b/static/maps/mvc/library/library-foldertoolbar-view.js.map index ae6b778dbf8..979b075eb0e 100644 --- a/static/maps/mvc/library/library-foldertoolbar-view.js.map +++ b/static/maps/mvc/library/library-foldertoolbar-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-foldertoolbar-view.js","sources":["../../../src/mvc/library/library-foldertoolbar-view.js"],"names":["define","mod_masthead","mod_utils","mod_toastr","mod_library_model","mod_select","FolderToolbarView","Backbone","View","extend","el","events","click #toolbtn_create_folder","click #toolbtn_bulk_import","click #include_deleted_datasets_chk","click #toolbtn_bulk_delete","click .toolbtn-show-locinfo","click .page_size_prompt","defaults","can_add_library_item","contains_file_or_folder","chain_call_control","total_number","failed_number","disabled_jstree_element","modal","jstree","histories","select_genome","select_extension","list_extensions","auto","id","text","description","list_genomes","initialize","options","this","_","fetchExtAndGenomes","render","toolbar_template","templateToolBar","template_defaults","is_admin","is_anonym","mutiple_add_dataset_options","Galaxy","user","isAdmin","isAnonymous","config","user_library_import_dir","allow_library_path_paste","library_import_dir","$el","html","renderPaginator","paginator_template","templatePaginator","$","find","show_page","parseInt","page_count","total_items_count","items_shown","configureElements","show","hide","tooltip","createFolderFromModal","event","preventDefault","stopPropagation","self","template","templateNewFolderInModal","closing_events","title","body","buttons","Create","create_new_folder_event","Close","folderDetails","serialize_new_folder","validate_new_folder","current_folder_id","folder","FolderAsModel","url_items","history","fragment","split","indexOf","length","url","urlRoot","save","success","set","type","libraries","folderListView","collection","add","error","model","response","responseJSON","err_msg","name","val","modalBulkImport","checkedValues","info","refreshUserHistoriesList","that","templateBulkImportInModal","models","Import","importAllIntoHistory","callback","GalaxyHistories","fetch","disableButton","new_history_name","post","root","done","new_history","last_used_history_id","processImportToHistory","fail","always","enableButton","history_id","history_name","dataset_ids","folder_ids","each","parentElement","data","classList","contains","push","datasets_to_import","i","library_dataset_id","historyItem","HistoryItem","content","source","library_folder_id","initChainCallControl","action","jQuery","getJSON","chainCallImportingIntoHistory","updateProgress","progress","progressStep","width","Math","round","txt_representation","download","folder_id","format","ld_ids","processDownload","method","param","inputs","pair","appendTo","submit","remove","addFilesFromHistoryModal","template_modal","templateAddFilesFromHistory","folder_name","full_path","Add","addAllDatasetsFromHistory","closing_callback","library_router","back","fetchAndDisplayHistoryContents","change","target","value","importFilesFromPathModal","templateImportPathModal","importFromPathsClicked","navigate","trigger","renderSelectBoxes","get","datatypes","key","extension","description_url","sort","a","b","unshift","cache","genomes","css","container","importFilesFromGalaxyFolderModal","templateBrowserModal","importFromJstreePath","bind","renderJstree","Jstree","require","core","plugins","types","icon","file","checkbox","three_state","err_code","warning","preserve_dirs","is","link_data","file_type","dbkey","paths","valid_paths","trimmed","trim","chainCallImportingFolders","templateAddingDatasetsProgressBar","templateDeletingItemsProgressBar","templateImportIntoHistoryProgressBar","emit","all_nodes","get_selected","selected_nodes","filter","node","state","disabled","tag_using_filenames","selection_type","undefined","li_attr","full_source","chainCallImportingUserdirFiles","history_contents","HistoryContents","history_contents_template","templateHistoryContents","contents","reverse","checked_hdas","history_item_ids","history_item_types","items_to_add","hid","item_type","history_item_id","folder_item","Item","from_hdca_id","from_hda_id","chainCallAddingHdas","history_item_set","popped_item","pop","onclick","window","location","promise","when","hdas_set","added_hdas","Folder","chainCallDeletingItems","items_to_delete","deleted_items","destroy","item","include_deleted","updated_item","model_class","checkIncludeDeleted","fetchFolder","checked","deleteSelectedItems","substring","items_total","dataset","showLocInfo","library","libraryListView","parent_library_id","showLocInfoModal","Library","templateLocInfoInModal","showImportModal","showPageSizePrompt","folder_page_size","prompt","preferences","join"],"mappings":"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OAAQ,aACjD,MACF,KAAK,OACHpH,KAAK4J,0BACL,MACF,KAAK,UACH5J,KAAK+K,kCAAoC3D,OAAQ,WACjD,MACF,SACE1G,OAAOwD,UAAUoF,eAAeC,OAChC1L,EAAWyG,MAAM,4BAQvBwM,mBAAoB,WAClB,GAAIC,GAAmBC,OAAQ,8CAA+CtQ,OAAOwD,UAAU+M,YAAY/G,IAAK,oBACrF,OAApB6G,GAAgCA,GAAoBrP,SAAUqP,KACjErQ,OAAOwD,UAAU+M,YAAYjN,KAAO+M,iBAAoBrP,SAAUqP,KAClErQ,OAAOwD,UAAUC,eAAehE,QAAUT,GAAIM,KAAKD,QAAQL,GAAI+B,UAAW,MAIhFpB,gBAAiB,WACf,MAAOJ,GAAEsC,UAET,wCAEE,6BACE,yCACE,+CAEA,2DACA,sGACE,UACE,mFACF,WACF,SACA,qNACE,qEACF,YACA,0CACA,kEACE,oIACE,8FACF,YACA,yCACE,yEACA,6DACE,gFACF,UACA,qDACE,4BACA,+CACA,wDACE,mFACF,UACA,qDACE,kEACF,UACF,UACF,QACF,SACA,iBACE,0LACE,mEACF,OACF,UACA,iOACE,mCACA,mBACF,YACA,0FACE,kIACE,4EACF,YACA,yCACE,kEACA,kEACA,+DACF,QACF,SACE,+NACA,oDACA,8LACE,0CACA,gBACF,YACA,qGACE,8FACE,gDACE,8CACA,aACF,YACF,OACF,UACF,SACF,UAEF,kCACA,SAEA,wDAEF,UACE2O,KAAK,MAGTN,uBAAwB,WACtB,MAAO3Q,GAAEsC,UACP,QACE,6CACE,UACE,uCACA,YACF,WACA,UACE,OACE,gBACA,sCACF,QACA,gDACE,OACE,uBACA,6CACF,QACF,UACA,6CACE,OACE,oBACA,0CACF,QACF,UACA,uDACE,OACE,mBACA,2GACF,QACF,UACA,OACE,cACA,oCACF,QACF,WACF,WACA,6CACE,UACE,sCACA,YACF,WACA,UACE,OACE,gBACA,sCACF,QACA,gDACE,OACE,uBACA,6CACF,QACF,UACA,OACE,cACA,6BACF,QACA,WACJ,WACJ,UACE2O,KAAK,MAGT1O,yBAA0B,WACxB,MAAOvC,GAAEsC,UACT,8BACE,SACE,wEACA,4EACF,UACF,UACE2O,KAAK,MAIThM,0BAA4B,WAC1B,MAAOjF,GAAEsC,UACT,QACE,mCACE,mBACA,iHACE,8CACE,mGACF,YACF,YACF,SACA,mCACE,kBACA,4GACA,WACF,SACF,UACE2O,KAAK,MAGTvE,qCAAuC,WACrC,MAAO1M,GAAEsC,UACT,4BACE,2EACF,SACA,yBACE,gJACE,mDACF,SACF,UACE2O,KAAK,MAGTzE,kCAAmC,WACjC,MAAOxM,GAAEsC,UACT,4BACE,iFACF,SACA,yBACE,gJACE,mDACF,SACF,UACE2O,KAAK,MAGTxE,iCAAkC,WAChC,MAAOzM,GAAEsC,UACT,4BACA,SACA,yBACE,gJACE,mDACF,SACF,UACE2O,KAAK,MAGTlG,qBAAsB,WACpB,MAAO/K,GAAEsC,UACT,gCACE,0JACA,wLACA,mCACE,oFACE,yGACF,WACA,sFACA,uFACA,WACF,SACA,mCACE,kFACE,yFACA,+BACF,WACA,0EACE,mEACA,gCACF,WACF,SACA,qGACE,aACF,YACA,qGACE,cACF,YACA,SAEA,4BACA,SACA,SACA,kFACA,QACE,gFACA,4EACF,SACA,QACG,4CACG,oCACA,0FACH,WACH,SACF,UACE2O,KAAK,MAGTrH,wBAAyB,WACvB,MAAO5J,GAAEsC,UACT,gCACE,+JACA,sCACE,4DACE,yFACA,+BACF,WACA,oDACE,mEACA,gCACF,WACF,SACA,uKACA,SACA,kFACA,QACE,gFACA,4EACF,SACF,UACE2O,KAAK,MAGTlI,4BAA6B,WAC3B,MAAO/I,GAAEsC,UACT,6BACE,QACE,oBACA,8EACE,8CACE,mGACF,YACF,YACF,SACA,QACA,sCACA,SACF,UACE2O,KAAK;;EAGTrD,wBAAyB,WACvB,MAAO5N,GAAEsC,UACT,kDACA,OACE,0DACE,oDACE,yDACI,kEACA,0CACE,+GACE,sJACF,QACD,iBACE,6FACG,2GACE,oKACF,UACF,QACF,UACN,iGACI,+GACE,iIACF,QACJ,UACF,UACF,YACF,SACE2O,KAAK,MAGT5P,kBAAmB,WACjB,MAAOrB,GAAEsC,UACT,wCACE,uCACE,gDACE,iGACA,wHACF,iBACE,iGACA,2GACF,UACF,iBACE,kHACA,wHACF,UACA,sBACE,0FACF,QACA,4CACE,2GACA,0HACF,iBACE,yHACA,2IACF,UACF,QACA,SACE,sBACA,8HACE,qBACF,OACA,0CACF,WACE2O,KAAK,OAKX,QACIlT,kBAAmBA"} \ No newline at end of file +{"version":3,"file":"library-foldertoolbar-view.js","sources":["../../../src/mvc/library/library-foldertoolbar-view.js"],"names":["define","mod_masthead","mod_utils","mod_toastr","mod_library_model","mod_select","FolderToolbarView","Backbone","View","extend","el","events","click #toolbtn_create_folder","click #toolbtn_bulk_import","click #include_deleted_datasets_chk","click #toolbtn_bulk_delete","click .toolbtn-show-locinfo","click .page_size_prompt","defaults","can_add_library_item","contains_file_or_folder","chain_call_control","total_number","failed_number","disabled_jstree_element","modal","jstree","histories","select_genome","select_extension","list_extensions","auto","id","text","description","list_genomes","initialize","options","this","_","fetchExtAndGenomes","render","toolbar_template","templateToolBar","template_defaults","is_admin","is_anonym","mutiple_add_dataset_options","Galaxy","user","isAdmin","isAnonymous","config","user_library_import_dir","allow_library_path_paste","library_import_dir","$el","html","renderPaginator","paginator_template","templatePaginator","$","find","show_page","parseInt","page_count","total_items_count","items_shown","configureElements","show","hide","tooltip","createFolderFromModal","event","preventDefault","stopPropagation","self","template","templateNewFolderInModal","closing_events","title","body","buttons","Create","create_new_folder_event","Close","folderDetails","serialize_new_folder","validate_new_folder","current_folder_id","folder","FolderAsModel","url_items","history","fragment","split","indexOf","length","url","urlRoot","save","success","set","type","libraries","folderListView","collection","add","error","model","response","responseJSON","err_msg","name","val","modalBulkImport","checkedValues","info","refreshUserHistoriesList","that","templateBulkImportInModal","models","Import","importAllIntoHistory","callback","GalaxyHistories","fetch","disableButton","new_history_name","post","root","done","new_history","last_used_history_id","processImportToHistory","fail","always","enableButton","history_id","history_name","dataset_ids","folder_ids","each","parentElement","data","classList","contains","push","datasets_to_import","i","library_dataset_id","historyItem","HistoryItem","content","source","library_folder_id","initChainCallControl","action","jQuery","getJSON","chainCallImportingIntoHistory","updateProgress","progress","progressStep","width","Math","round","txt_representation","download","folder_id","format","ld_ids","processDownload","method","param","inputs","pair","appendTo","submit","remove","addFilesFromHistoryModal","template_modal","templateAddFilesFromHistory","folder_name","full_path","Add","addAllDatasetsFromHistory","closing_callback","library_router","back","fetchAndDisplayHistoryContents","change","target","value","importFilesFromPathModal","templateImportPathModal","importFromPathsClicked","navigate","trigger","renderSelectBoxes","get","datatypes","key","extension","description_url","sort","a","b","unshift","cache","genomes","css","container","importFilesFromGalaxyFolderModal","templateBrowserModal","importFromJstreePath","bind","renderJstree","Jstree","require","core","plugins","types","icon","file","checkbox","three_state","err_code","warning","preserve_dirs","is","link_data","file_type","dbkey","paths","valid_paths","trimmed","trim","chainCallImportingFolders","templateAddingDatasetsProgressBar","templateDeletingItemsProgressBar","templateImportIntoHistoryProgressBar","emit","all_nodes","get_selected","selected_nodes","filter","node","state","disabled","tag_using_filenames","selection_type","undefined","li_attr","full_source","chainCallImportingUserdirFiles","history_contents","HistoryContents","history_contents_template","templateHistoryContents","contents","reverse","prop","checked_hdas","history_item_ids","history_item_types","items_to_add","hid","item_type","history_item_id","folder_item","Item","from_hdca_id","from_hda_id","chainCallAddingHdas","history_item_set","popped_item","pop","onclick","window","location","promise","when","hdas_set","added_hdas","Folder","chainCallDeletingItems","items_to_delete","deleted_items","destroy","item","include_deleted","updated_item","model_class","checkIncludeDeleted","fetchFolder","checked","deleteSelectedItems","substring","items_total","dataset","showLocInfo","library","libraryListView","parent_library_id","showLocInfoModal","Library","templateLocInfoInModal","showImportModal","showPageSizePrompt","folder_page_size","prompt","preferences","join"],"mappings":"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J,GAAUiO,QAASA,EAASzQ,QAASkF,EAAKlF,UAC5D6C,SACIG,MAAc,WAAYrC,OAAOvB,MAAM6C,YAKjD8O,gBAAiB,SAAS/Q,GACxB,OAAOA,EAAQqH,QACb,IAAK,UACHpH,KAAK8I,0BACL,MACF,KAAK,YACH9I,KAAK+K,kCAAoC3D,OAAQ,aACjD,MACF,KAAK,OACHpH,KAAK4J,0BACL,MACF,KAAK,UACH5J,KAAK+K,kCAAoC3D,OAAQ,WACjD,MACF,SACE1G,OAAOwD,UAAUoF,eAAeC,OAChC1L,EAAWyG,MAAM,4BAQvByM,mBAAoB,WAClB,GAAIC,GAAmBC,OAAQ,8CAA+CvQ,OAAOwD,UAAUgN,YAAYhH,IAAK,oBACrF,OAApB8G,GAAgCA,GAAoBtP,SAAUsP,KACjEtQ,OAAOwD,UAAUgN,YAAYlN,KAAOgN,iBAAoBtP,SAAUsP,KAClEtQ,OAAOwD,UAAUC,eAAehE,QAAUT,GAAIM,KAAKD,QAAQL,GAAI+B,UAAW,MAIhFpB,gBAAiB,WACf,MAAOJ,GAAEsC,UAET,wCAEE,6BACE,yCACE,+CAEA,2DACA,sGACE,UACE,mFACF,WACF,SACA,qNACE,qEACF,YACA,0CACA,kEACE,oIACE,8FACF,YACA,yCACE,yEACA,6DACE,gFACF,UACA,qDACE,4BACA,+CACA,wDACE,mFACF,UACA,qDACE,kEACF,UACF,UACF,QACF,SACA,iBACE,0LACE,mEACF,OACF,UACA,iOACE,mCACA,mBACF,YACA,0FACE,kIACE,4EACF,YACA,yCACE,kEACA,kEACA,+DACF,QACF,SACE,+NACA,oDACA,8LACE,0CACA,gBACF,YACA,0GACE,8FACE,gDACE,8CACA,aACF,YACF,OACF,UACF,SACF,UAEF,kCACA,SAEA,wDAEF,UACE4O,KAAK,MAGTN,uBAAwB,WACtB,MAAO5Q,GAAEsC,UACP,QACE,6CACE,UACE,uCACA,YACF,WACA,UACE,OACE,gBACA,sCACF,QACA,gDACE,OACE,uBACA,6CACF,QACF,UACA,6CACE,OACE,oBACA,0CACF,QACF,UACA,uDACE,OACE,mBACA,2GACF,QACF,UACA,OACE,cACA,oCACF,QACF,WACF,WACA,6CACE,UACE,sCACA,YACF,WACA,UACE,OACE,gBACA,sCACF,QACA,gDACE,OACE,uBACA,6CACF,QACF,UACA,OACE,cACA,6BACF,QACA,WACJ,WACJ,UACE4O,KAAK,MAGT3O,yBAA0B,WACxB,MAAOvC,GAAEsC,UACT,8BACE,SACE,wEACA,4EACF,UACF,UACE4O,KAAK,MAITjM,0BAA4B,WAC1B,MAAOjF,GAAEsC,UACT,QACE,mCACE,mBACA,iHACE,8CACE,mGACF,YACF,YACF,SACA,mCACE,kBACA,4GACA,WACF,SACF,UACE4O,KAAK,MAGTxE,qCAAuC,WACrC,MAAO1M,GAAEsC,UACT,4BACE,2EACF,SACA,yBACE,gJACE,mDACF,SACF,UACE4O,KAAK,MAGT1E,kCAAmC,WACjC,MAAOxM,GAAEsC,UACT,4BACE,iFACF,SACA,yBACE,gJACE,mDACF,SACF,UACE4O,KAAK,MAGTzE,iCAAkC,WAChC,MAAOzM,GAAEsC,UACT,4BACA,SACA,yBACE,gJACE,mDACF,SACF,UACE4O,KAAK,MAGTnG,qBAAsB,WACpB,MAAO/K,GAAEsC,UACT,gCACE,0JACA,wLACA,mCACE,oFACE,yGACF,WACA,sFACA,uFACA,WACF,SACA,mCACE,kFACE,yFACA,+BACF,WACA,0EACE,mEACA,gCACF,WACF,SACA,qGACE,aACF,YACA,qGACE,cACF,YACA,SAEA,4BACA,SACA,SACA,kFACA,QACE,gFACA,4EACF,SACA,QACG,4CACG,oCACA,0FACH,WACH,SACF,UACE4O,KAAK,MAGTtH,wBAAyB,WACvB,MAAO5J,GAAEsC,UACT,gCACE,+JACA,sCACE,4DACE,yFACA,+BACF,WACA,oDACE,mEACA,gCACF,WACF,SACA,uKACA,SACA,kFACA,QACE,gFACA,4EACF,SACF,UACE4O,KAAK;;EAGTnI,4BAA6B,WAC3B,MAAO/I,GAAEsC,UACT,6BACE,QACE,oBACA,8EACE,8CACE,mGACF,YACF,YACF,SACA,QACA,sCACA,SACF,UACE4O,KAAK,MAGTtD,wBAAyB,WACvB,MAAO5N,GAAEsC,UACT,kDACA,OACE,0DACE,oDACE,iDACA,yDACI,kEACA,0CACE,+GACE,UACF,6CACI,wFACA,0HACF,WACF,QACD,iBACE,6FACG,2GACE,6CACA,kLACF,UACF,QACF,UACN,iGACI,+GACE,6CACE,wFACA,qGACF,WACF,QACJ,UACF,UACF,YACF,QACA,6GACE,aACF,YACA,+GACE,eACF,aACE4O,KAAK,MAGT7P,kBAAmB,WACjB,MAAOrB,GAAEsC,UACT,wCACE,uCACE,gDACE,iGACA,wHACF,iBACE,iGACA,2GACF,UACF,iBACE,kHACA,wHACF,UACA,sBACE,0FACF,QACA,4CACE,2GACA,0HACF,iBACE,yHACA,2IACF,UACF,QACA,SACE,sBACA,8HACE,qBACF,OACA,0CACF,WACE4O,KAAK,OAKX,QACInT,kBAAmBA"} \ No newline at end of file diff --git a/static/maps/mvc/library/library-library-view.js.map b/static/maps/mvc/library/library-library-view.js.map index b91167c7433..45201132a33 100644 --- a/static/maps/mvc/library/library-library-view.js.map +++ b/static/maps/mvc/library/library-library-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-library-view.js","sources":["../../../src/mvc/library/library-library-view.js"],"names":["define","mod_toastr","mod_library_model","mod_select","LibraryView","Backbone","View","extend","el","model","options","events","click .toolbtn_save_permissions","initialize","this","_","id","fetchLibrary","Library","that","fetch","success","show_permissions","showPermissions","render","error","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","$","remove","template","templateLibrary","$el","html","item","tooltip","shareDataset","info","goBack","undefined","fetched_permissions","set","access_library_role_list","length","is_unrestricted","is_admin","user","isAdmin","templateLibraryPermissions","library","self","get","root","done","prepareSelectBoxes","fail","css","_serializeRoles","role_list","selected_roles","i","push","selected_access_library_roles","selected_add_item_roles","add_library_item_role_list","selected_manage_library_roles","manage_library_role_list","selected_modify_library_roles","modify_library_role_list","accessSelectObject","_createSelectOptions","addSelectObject","manageSelectObject","modifySelectObject","init_data","is_library_access","select_options","minimumInputLength","multiple","placeholder","container","find","ajax","url","dataType","quietMillis","data","term","page","q","page_limit","results","more","total","roles","formatResult","role","name","type","formatSelection","initSelection","element","callback","val","split","each","initialData","dropdownCssClass","comingSoon","warning","copyToClipboard","href","history","location","lastIndexOf","substr","window","prompt","makeDatasetPrivate","post","removeDatasetRestrictions","_extractIds","roles_list","ids_list","savePermissions","access_ids","select2","add_ids","manage_ids","modify_ids","access_ids[]","add_ids[]","manage_ids[]","modify_ids[]","join"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"library-library-view.js","sources":["../../../src/mvc/library/library-library-view.js"],"names":["define","mod_toastr","mod_library_model","mod_select","LibraryView","Backbone","View","extend","el","model","options","events","click .toolbtn_save_permissions","initialize","this","_","id","fetchLibrary","Library","that","fetch","success","show_permissions","showPermissions","error","response","responseJSON","err_msg","onclick","Galaxy","libraries","library_router","back","goBack","$","remove","undefined","fetched_permissions","set","access_library_role_list","length","is_unrestricted","is_admin","user","isAdmin","template","templateLibraryPermissions","$el","html","library","self","get","root","done","prepareSelectBoxes","fail","tooltip","css","_serializeRoles","role_list","selected_roles","i","push","selected_access_library_roles","selected_add_item_roles","add_library_item_role_list","selected_manage_library_roles","manage_library_role_list","selected_modify_library_roles","modify_library_role_list","accessSelectObject","_createSelectOptions","addSelectObject","manageSelectObject","modifySelectObject","init_data","is_library_access","select_options","minimumInputLength","multiple","placeholder","container","find","ajax","url","dataType","quietMillis","data","term","page","q","page_limit","results","more","total","roles","formatResult","role","name","type","formatSelection","initSelection","element","callback","val","split","each","item","initialData","dropdownCssClass","makeDatasetPrivate","post","removeDatasetRestrictions","_extractIds","roles_list","ids_list","savePermissions","access_ids","select2","add_ids","manage_ids","modify_ids","access_ids[]","add_ids[]","manage_ids[]","modify_ids[]","join"],"mappings":"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"} \ No newline at end of file diff --git a/static/maps/mvc/library/library-librarytoolbar-view.js.map b/static/maps/mvc/library/library-librarytoolbar-view.js.map index fb2db3daed4..5454b8517ae 100644 --- a/static/maps/mvc/library/library-librarytoolbar-view.js.map +++ b/static/maps/mvc/library/library-librarytoolbar-view.js.map @@ -1 +1 @@ -{"version":3,"file":"library-librarytoolbar-view.js","sources":["../../../src/mvc/library/library-librarytoolbar-view.js"],"names":["define","mod_toastr","mod_library_model","LibraryToolbarView","Backbone","View","extend","el","defaults","search_term","events","click #create_new_library_btn","click #include_deleted_chk","click #exclude_restricted_chk","click #lib_page_size_prompt","keyup .library-search-input","initialize","options","this","_","render","toolbar_template","templateToolBar","is_admin","is_anonym","Galaxy","user","isAdmin","isAnonymous","$el","html","admin_user","anon_user","find","checked","libraries","preferences","get","renderPaginator","paginator_template","templatePaginator","show_page","parseInt","page_count","total_libraries_count","libraries_shown","createLibraryFromModal","event","preventDefault","stopPropagation","self","modal","show","closing_events","title","body","templateNewLibraryInModal","buttons","Create","createNewLibrary","Close","hide","libraryDetails","serializeNewLibrary","validateNewLibrary","library","Library","save","success","libraryListView","collection","add","clearLibraryModal","error","model","response","responseJSON","err_msg","showPageSizePrompt","library_page_size","prompt","set","$","val","name","description","synopsis","includeDeletedChecked","target","with_deleted","fetchDeleted","excludeRestrictedChecked","without_restricted","searchLibraries","template","join"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"library-librarytoolbar-view.js","sources":["../../../src/mvc/library/library-librarytoolbar-view.js"],"names":["define","mod_toastr","mod_library_model","LibraryToolbarView","Backbone","View","extend","el","defaults","search_term","events","click #create_new_library_btn","click #include_deleted_chk","click #exclude_restricted_chk","click #lib_page_size_prompt","keyup .library-search-input","initialize","options","this","_","render","toolbar_template","templateToolBar","is_admin","is_anonym","Galaxy","user","isAdmin","isAnonymous","$el","html","admin_user","anon_user","find","checked","libraries","preferences","get","renderPaginator","paginator_template","templatePaginator","show_page","parseInt","page_count","total_libraries_count","libraries_shown","createLibraryFromModal","event","preventDefault","stopPropagation","self","modal","show","closing_events","title","body","templateNewLibraryInModal","buttons","Create","createNewLibrary","Close","hide","libraryDetails","serializeNewLibrary","validateNewLibrary","library","Library","save","success","libraryListView","collection","add","clearLibraryModal","error","model","response","responseJSON","err_msg","showPageSizePrompt","library_page_size","prompt","set","$","val","name","description","synopsis","includeDeletedChecked","target","with_deleted","fetchDeleted","excludeRestrictedChecked","without_restricted","searchLibraries","template","join"],"mappings":"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"} \ No newline at end of file diff --git a/static/scripts/mvc/library/library-dataset-view.js b/static/scripts/mvc/library/library-dataset-view.js index fe899d4578b..c9fcb2d8b75 100644 --- a/static/scripts/mvc/library/library-dataset-view.js +++ b/static/scripts/mvc/library/library-dataset-view.js @@ -1,2 +1,2 @@ -define(["libs/toastr","mvc/library/library-model","utils/utils","mvc/ui/ui-select"],function(a,b,c,d){var e=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_modify_dataset":"enableModification","click .toolbtn_cancel_modifications":"render","click .toolbtn-download-dataset":"downloadDataset","click .toolbtn-import-dataset":"importIntoHistory","click .toolbtn-share-dataset":"shareDataset","click .btn-copy-link-to-clipboard":"copyToClipboard","click .btn-make-private":"makeDatasetPrivate","click .btn-remove-restrictions":"removeDatasetRestrictions","click .toolbtn_save_permissions":"savePermissions","click .toolbtn_save_modifications":"comingSoon"},select_genome:null,select_extension:null,list_extensions:[],auto:{id:"auto",text:"Auto-detect",description:"This system will try to detect the file type automatically. If your file is not detected properly as one of the known formats, it most likely means that it has some format problems (e.g., different number of columns on different rows). You can still coerce the system to set your data to the format you think it should be. You can also upload compressed files, which will automatically be decompressed."},list_genomes:[],initialize:function(a){this.options=_.extend(this.options,a),this.fetchExtAndGenomes(),this.options.id&&this.fetchDataset()},fetchDataset:function(c){this.options=_.extend(this.options,c),this.model=new b.Item({id:this.options.id});var d=this;this.model.fetch({success:function(){d.options.show_permissions?d.showPermissions():d.options.show_version?d.fetchVersion():d.render()},error:function(b,c){"undefined"!=typeof c.responseJSON?a.error(c.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):a.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},render:function(a){this.options=_.extend(this.options,a),$(".tooltip").remove();var b=this.templateDataset();this.$el.html(b({item:this.model})),$(".peek").html(this.model.get("peek")),$("#center [data-toggle]").tooltip()},fetchVersion:function(c){this.options=_.extend(this.options,c),that=this,this.options.ldda_id?(this.ldda=new b.Ldda({id:this.options.ldda_id}),this.ldda.url=this.ldda.urlRoot+this.model.id+"/versions/"+this.ldda.id,this.ldda.fetch({success:function(){that.renderVersion()},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error ocurred.")}})):(this.render(),a.error("Library dataset version requested but no id provided."))},renderVersion:function(){$(".tooltip").remove();var a=this.templateVersion();this.$el.html(a({item:this.model,ldda:this.ldda})),$(".peek").html(this.ldda.get("peek"))},enableModification:function(){$(".tooltip").remove();var a=this.templateModifyDataset();this.$el.html(a({item:this.model})),this.renderSelectBoxes({genome_build:this.model.get("genome_build"),file_ext:this.model.get("file_ext")}),$(".peek").html(this.model.get("peek")),$("#center [data-toggle]").tooltip()},downloadDataset:function(){var a=Galaxy.root+"api/libraries/datasets/download/uncompressed",b={ld_ids:this.id};this.processDownload(a,b)},processDownload:function(b,c,d){if(b&&c){c="string"==typeof c?c:$.param(c);var e="";$.each(c.split("&"),function(){var a=this.split("=");e+=''}),$('
'+e+"
").appendTo("body").submit().remove(),a.info("Your download will begin soon.")}},importIntoHistory:function(){this.refreshUserHistoriesList(function(a){var b=a.templateBulkImportInModal();a.modal=Galaxy.modal,a.modal.show({closing_events:!0,title:"Import into History",body:b({histories:a.histories.models}),buttons:{Import:function(){a.importCurrentIntoHistory()},Close:function(){Galaxy.modal.hide()}}})})},refreshUserHistoriesList:function(c){var d=this;this.histories=new b.GalaxyHistories,this.histories.fetch({success:function(b){0===b.length?a.warning("You have to create history first. Click this to do so.","",{onclick:function(){window.location=Galaxy.root}}):c(d)},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error ocurred.")}})},importCurrentIntoHistory:function(){this.modal.disableButton("Import");var b=this.modal.$("input[name=history_name]").val(),c=this;if(""!==b)$.post(Galaxy.root+"api/histories",{name:b}).done(function(a){c.processImportToHistory(a.id)}).fail(function(){a.error("An error ocurred.")}).always(function(){c.modal.enableButton("Import")});else{var d=$(this.modal.$el).find("select[name=dataset_import_single] option:selected").val();this.processImportToHistory(d),this.modal.enableButton("Import")}},processImportToHistory:function(c){var d=new b.HistoryItem;d.url=d.urlRoot+c+"/contents",jQuery.getJSON(Galaxy.root+"history/set_as_current?id="+c),d.save({content:this.id,source:"library"},{success:function(){Galaxy.modal.hide(),a.success("Dataset imported. Click this to start analyzing it.","",{onclick:function(){window.location=Galaxy.root}})},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?"Dataset not imported. "+c.responseJSON.err_msg:"An error occured. Dataset not imported. Please try again.")}})},shareDataset:function(){a.info("Feature coming soon.")},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(b){this.options=_.extend(this.options,b),$(".tooltip").remove(),void 0!==this.options.fetched_permissions&&this.model.set(0===this.options.fetched_permissions.access_dataset_roles.length?{is_unrestricted:!0}:{is_unrestricted:!1});var c=!1;Galaxy.user&&(c=Galaxy.user.isAdmin());var d=this.templateDatasetPermissions();this.$el.html(d({item:this.model,is_admin:c}));var e=this;$.get(Galaxy.root+"api/libraries/datasets/"+e.id+"/permissions?scope=current").done(function(a){e.prepareSelectBoxes({fetched_permissions:a,is_admin:c})}).fail(function(){a.error("An error occurred while attempting to fetch dataset permissions.")}),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},_serializeRoles:function(a){for(var b=[],c=0;c=0;c--)b.push(a[c].id);return b},savePermissions:function(){var b=this,c=this._extractIds(this.accessSelectObject.$el.select2("data")),d=this._extractIds(this.manageSelectObject.$el.select2("data")),e=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post(Galaxy.root+"api/libraries/datasets/"+b.id+"/permissions?action=set_permissions",{"access_ids[]":c,"manage_ids[]":d,"modify_ids[]":e}).done(function(c){b.showPermissions({fetched_permissions:c}),a.success("Permissions saved.")}).fail(function(){a.error("An error occurred while attempting to set dataset permissions.")})},fetchExtAndGenomes:function(){var a=this;c.get({url:Galaxy.root+"api/datatypes?extension_only=False",success:function(b){for(var c in b)a.list_extensions.push({id:b[c].extension,text:b[c].extension,description:b[c].description,description_url:b[c].description_url});a.list_extensions.sort(function(a,b){return a.id>b.id?1:a.idb.id?1:a.id','
','",'",'<% if (item.get("can_user_modify")) { %>','","<% } %>",'<% if (item.get("can_user_manage")) { %>','/datasets/<%- item.id %>/permissions">','","","<% } %>","
",'",'<% if (item.get("is_unrestricted")) { %>','
',"This dataset is unrestricted so everybody can access it. Just share the URL of this page. ",' ","
","<% } %>",'
','',"",'','',"",'<% if (item.get("file_ext")) { %>',"",'','',"","<% } %>",'<% if (item.get("genome_build")) { %>',"",'','',"","<% } %>",'<% if (item.get("file_size")) { %>',"",'','',"","<% } %>",'<% if (item.get("date_uploaded")) { %>',"",'','',"","<% } %>",'<% if (item.get("uploaded_by")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_data_lines")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_comment_lines")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_columns")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_column_types")) { %>',"",'','',"","<% } %>",'<% if (item.get("message")) { %>',"",'','',"","<% } %>",'<% if (item.get("misc_blurb")) { %>',"",'','',"","<% } %>",'<% if (item.get("misc_info")) { %>',"",'','',"","<% } %>",'<% if (item.get("tags")) { %>',"",'','',"","<% } %>","
">Name<%= _.escape(item.get("name")) %>
Data type<%= _.escape(item.get("file_ext")) %>
Genome build<%= _.escape(item.get("genome_build")) %>
Size<%= _.escape(item.get("file_size")) %>
Date uploaded (UTC)<%= _.escape(item.get("date_uploaded")) %>
Uploaded by<%= _.escape(item.get("uploaded_by")) %>
Data Lines<%= _.escape(item.get("metadata_data_lines")) %>
Comment Lines<%= _.escape(item.get("metadata_comment_lines")) %>
Number of Columns<%= _.escape(item.get("metadata_columns")) %>
Column Types<%= _.escape(item.get("metadata_column_types")) %>
Message<%= _.escape(item.get("message")) %>
Miscellaneous blurb<%= _.escape(item.get("misc_blurb")) %>
Miscellaneous information<%= _.escape(item.get("misc_info")) %>
Tags<%= _.escape(item.get("tags")) %>
","
",'
',"
","
",'<% if (item.get("has_versions")) { %>',"
","

Expired versions:

","
","<% } %>","
","
"].join(""))},templateVersion:function(){return _.template(['
','",'",'
This is an expired version of the library dataset: <%= _.escape(item.get("name")) %>
','
','',"",'','',"",'<% if (ldda.get("file_ext")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("genome_build")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("file_size")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("date_uploaded")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("uploaded_by")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_data_lines")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_comment_lines")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_columns")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_column_types")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("message")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("misc_blurb")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("misc_info")) { %>',"",'','',"","<% } %>",'<% if (item.get("tags")) { %>',"",'','',"","<% } %>","
Name<%= _.escape(ldda.get("name")) %>
Data type<%= _.escape(ldda.get("file_ext")) %>
Genome build<%= _.escape(ldda.get("genome_build")) %>
Size<%= _.escape(ldda.get("file_size")) %>
Date uploaded (UTC)<%= _.escape(ldda.get("date_uploaded")) %>
Uploaded by<%= _.escape(ldda.get("uploaded_by")) %>
Data Lines<%= _.escape(ldda.get("metadata_data_lines")) %>
Comment Lines<%= _.escape(ldda.get("metadata_comment_lines")) %>
Number of Columns<%= _.escape(ldda.get("metadata_columns")) %>
Column Types<%= _.escape(ldda.get("metadata_column_types")) %>
Message<%= _.escape(ldda.get("message")) %>
Miscellaneous blurb<%= _.escape(ldda.get("misc_blurb")) %>
Miscellaneous information<%= _.escape(ldda.get("misc_info")) %>
Tags<%= _.escape(item.get("tags")) %>
","
",'
',"
","
","
","
"].join(""))},templateModifyDataset:function(){return _.template(['
','
','",'","
",'",'
','

For full editing options please import the dataset to history and use "Edit attributes" on it.

','',"",'','',"","",'',"","","",'',"","","",'','',"","",'','',"","",'','',"",'','','',"",'','<% if (item.get("metadata_comment_lines") === "") { %>','',"<% } else { %>",'',"<% } %>","","",'','',"","",'','',"","",'','',"","",'','',"","",'','',"",'<% if (item.get("tags")) { %>',"",'','',"","<% } %>","
">Name">
Data type",'',"
Genome build",'',"
Size<%= _.escape(item.get("file_size")) %>
Date uploaded (UTC)<%= _.escape(item.get("date_uploaded")) %>
Uploaded by<%= _.escape(item.get("uploaded_by")) %>
Data Lines<%= _.escape(item.get("metadata_data_lines")) %>
Comment Lines<%= _.escape(item.get("metadata_comment_lines")) %>unknown
Number of Columns<%= _.escape(item.get("metadata_columns")) %>
Column Types<%= _.escape(item.get("metadata_column_types")) %>
Message<%= _.escape(item.get("message")) %>
Miscellaneous information<%= _.escape(item.get("misc_info")) %>
Miscellaneous blurb<%= _.escape(item.get("misc_blurb")) %>
Tags<%= _.escape(item.get("tags")) %>
","
",'
',"
","
","
","
"].join(""))},templateDatasetPermissions:function(){return _.template(['
','",'",'

Dataset: <%= _.escape(item.get("name")) %>

','
',"<% if (is_admin) { %>","You are logged in as an administrator therefore you can manage any dataset on this Galaxy instance. Please make sure you understand the consequences.","<% } else { %>","You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.","<% } %>","
",'
',"

Library-related permissions

","

Roles that can modify the library item

",'
','
User with any of these roles can modify name, metadata, and other information about this library item.
',"
","

Dataset-related permissions

",'
Changes made below will affect every library item that was created from this dataset and also every history this dataset is part of.
','<% if (!item.get("is_unrestricted")) { %>',"

You can remove all access restrictions on this dataset. ",'","

","<% } else { %>","This dataset is unrestricted so everybody can access it. Just share the URL of this page.",'","

You can make this dataset private to you. ",'","

","<% } %>","

Roles that can access the dataset

",'
','
',"User has to have all these roles in order to access this dataset."," Users without access permission cannot have other permissions on this dataset."," If there are no access roles set on the dataset it is considered unrestricted.","
","

Roles that can manage permissions on the dataset

",'
','
',"User with any of these roles can manage permissions of this dataset. If you remove yourself you will loose the ability manage this dataset unless you are an admin.","
",'","
","
"].join(""))},templateBulkImportInModal:function(){return _.template(["
",'
',"Select history: ",'","
",'
',"or create new: ",'',"","
","
"].join(""))},templateAccessSelect:function(){return _.template(['"].join(""))}});return{LibraryDatasetView:e}}); +define(["libs/toastr","mvc/library/library-model","utils/utils","mvc/ui/ui-select"],function(a,b,c,d){var e=Backbone.View.extend({el:"#center",model:null,options:{},defaults:{edit_mode:!1},events:{"click .toolbtn_modify_dataset":"enableModification","click .toolbtn_cancel_modifications":"render","click .toolbtn-download-dataset":"downloadDataset","click .toolbtn-import-dataset":"importIntoHistory","click .btn-copy-link-to-clipboard":"copyToClipboard","click .btn-make-private":"makeDatasetPrivate","click .btn-remove-restrictions":"removeDatasetRestrictions","click .toolbtn_save_permissions":"savePermissions","click .toolbtn_save_modifications":"saveModifications"},select_genome:null,select_extension:null,list_extensions:[],auto:{id:"auto",text:"Auto-detect",description:"This system will try to detect the file type automatically. If your file is not detected properly as one of the known formats, it most likely means that it has some format problems (e.g., different number of columns on different rows). You can still coerce the system to set your data to the format you think it should be. You can also upload compressed files, which will automatically be decompressed."},list_genomes:[],initialize:function(a){this.options=_.extend(this.options,a),this.fetchExtAndGenomes(),this.options.id&&this.fetchDataset()},fetchDataset:function(c){this.options=_.extend(this.options,c),this.model=new b.Item({id:this.options.id});var d=this;this.model.fetch({success:function(){d.options.show_permissions?d.showPermissions():d.options.show_version?d.fetchVersion():d.render()},error:function(b,c){"undefined"!=typeof c.responseJSON?a.error(c.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):a.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},render:function(a){this.options=_.extend(this.options,a),$(".tooltip").remove();var b=this.templateDataset();this.$el.html(b({item:this.model})),$(".peek").html(this.model.get("peek")),$("#center [data-toggle]").tooltip()},fetchVersion:function(c){this.options=_.extend(this.options,c),that=this,this.options.ldda_id?(this.ldda=new b.Ldda({id:this.options.ldda_id}),this.ldda.url=this.ldda.urlRoot+this.model.id+"/versions/"+this.ldda.id,this.ldda.fetch({success:function(){that.renderVersion()},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error ocurred.")}})):(this.render(),a.error("Library dataset version requested but no id provided."))},renderVersion:function(){$(".tooltip").remove();var a=this.templateVersion();this.$el.html(a({item:this.model,ldda:this.ldda})),$(".peek").html(this.ldda.get("peek"))},enableModification:function(){$(".tooltip").remove();var a=this.templateModifyDataset();this.$el.html(a({item:this.model})),this.renderSelectBoxes({genome_build:this.model.get("genome_build"),file_ext:this.model.get("file_ext")}),$(".peek").html(this.model.get("peek")),$("#center [data-toggle]").tooltip()},downloadDataset:function(){var a=Galaxy.root+"api/libraries/datasets/download/uncompressed",b={ld_ids:this.id};this.processDownload(a,b)},processDownload:function(b,c,d){if(b&&c){c="string"==typeof c?c:$.param(c);var e="";$.each(c.split("&"),function(){var a=this.split("=");e+=''}),$('
'+e+"
").appendTo("body").submit().remove(),a.info("Your download will begin soon.")}},importIntoHistory:function(){this.refreshUserHistoriesList(function(a){var b=a.templateBulkImportInModal();a.modal=Galaxy.modal,a.modal.show({closing_events:!0,title:"Import into History",body:b({histories:a.histories.models}),buttons:{Import:function(){a.importCurrentIntoHistory()},Close:function(){Galaxy.modal.hide()}}})})},refreshUserHistoriesList:function(c){var d=this;this.histories=new b.GalaxyHistories,this.histories.fetch({success:function(b){0===b.length?a.warning("You have to create history first. Click this to do so.","",{onclick:function(){window.location=Galaxy.root}}):c(d)},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error ocurred.")}})},importCurrentIntoHistory:function(){this.modal.disableButton("Import");var b=this.modal.$("input[name=history_name]").val(),c=this;if(""!==b)$.post(Galaxy.root+"api/histories",{name:b}).done(function(a){c.processImportToHistory(a.id)}).fail(function(){a.error("An error ocurred.")}).always(function(){c.modal.enableButton("Import")});else{var d=$(this.modal.$el).find("select[name=dataset_import_single] option:selected").val();this.processImportToHistory(d),this.modal.enableButton("Import")}},processImportToHistory:function(c){var d=new b.HistoryItem;d.url=d.urlRoot+c+"/contents",jQuery.getJSON(Galaxy.root+"history/set_as_current?id="+c),d.save({content:this.id,source:"library"},{success:function(){Galaxy.modal.hide(),a.success("Dataset imported. Click this to start analyzing it.","",{onclick:function(){window.location=Galaxy.root}})},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?"Dataset not imported. "+c.responseJSON.err_msg:"An error occured. Dataset not imported. Please try again.")}})},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(b){this.options=_.extend(this.options,b),$(".tooltip").remove(),void 0!==this.options.fetched_permissions&&this.model.set(0===this.options.fetched_permissions.access_dataset_roles.length?{is_unrestricted:!0}:{is_unrestricted:!1});var c=!1;Galaxy.user&&(c=Galaxy.user.isAdmin());var d=this.templateDatasetPermissions();this.$el.html(d({item:this.model,is_admin:c}));var e=this;$.get(Galaxy.root+"api/libraries/datasets/"+e.id+"/permissions?scope=current").done(function(a){e.prepareSelectBoxes({fetched_permissions:a,is_admin:c})}).fail(function(){a.error("An error occurred while attempting to fetch dataset permissions.")}),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},_serializeRoles:function(a){for(var b=[],c=0;c0))return void a.warning("Library dataset name has to be at least 1 character long.");c.set("name",d),b=!0}var e=this.$el.find(".input_dataset_misc_info").val();"undefined"!=typeof e&&e!==c.get("misc_info")&&(c.set("misc_info",e),b=!0);var f=this.select_genome.$el.select2("data").id;"undefined"!=typeof f&&f!==c.get("genome_build")&&(c.set("genome_build",f),b=!0);var g=this.select_extension.$el.select2("data").id;"undefined"!=typeof g&&g!==c.get("file_ext")&&(c.set("file_ext",g),b=!0);var h=this;b?c.save(null,{patch:!0,success:function(){h.render(),a.success("Changes to library dataset saved.")},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error occured while attempting to update the library dataset.")}}):(h.render(),a.info("Nothing has changed."))},copyToClipboard:function(){var a=Backbone.history.location.href;-1!==a.lastIndexOf("/permissions")&&(a=a.substr(0,a.lastIndexOf("/permissions"))),window.prompt("Copy to clipboard: Ctrl+C, Enter",a)},makeDatasetPrivate:function(){var b=this;$.post(Galaxy.root+"api/libraries/datasets/"+b.id+"/permissions?action=make_private").done(function(c){b.model.set({is_unrestricted:!1}),b.showPermissions({fetched_permissions:c}),a.success("The dataset is now private to you.")}).fail(function(){a.error("An error occurred while attempting to make dataset private.")})},removeDatasetRestrictions:function(){var b=this;$.post(Galaxy.root+"api/libraries/datasets/"+b.id+"/permissions?action=remove_restrictions").done(function(c){b.model.set({is_unrestricted:!0}),b.showPermissions({fetched_permissions:c}),a.success("Access to this dataset is now unrestricted.")}).fail(function(){a.error("An error occurred while attempting to make dataset unrestricted.")})},_extractIds:function(a){for(var b=[],c=a.length-1;c>=0;c--)b.push(a[c].id);return b},savePermissions:function(){var b=this,c=this._extractIds(this.accessSelectObject.$el.select2("data")),d=this._extractIds(this.manageSelectObject.$el.select2("data")),e=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post(Galaxy.root+"api/libraries/datasets/"+b.id+"/permissions?action=set_permissions",{"access_ids[]":c,"manage_ids[]":d,"modify_ids[]":e}).done(function(c){b.showPermissions({fetched_permissions:c}),a.success("Permissions saved.")}).fail(function(){a.error("An error occurred while attempting to set dataset permissions.")})},fetchExtAndGenomes:function(){var a=this;0==this.list_genomes.length&&c.get({url:Galaxy.root+"api/datatypes?extension_only=False",success:function(b){for(var c in b)a.list_extensions.push({id:b[c].extension,text:b[c].extension,description:b[c].description,description_url:b[c].description_url});a.list_extensions.sort(function(a,b){return a.id>b.id?1:a.idb.id?1:a.id','
','",'",'<% if (item.get("can_user_modify")) { %>','","<% } %>",'<% if (item.get("can_user_manage")) { %>','/datasets/<%- item.id %>/permissions">','","","<% } %>","
",'",'<% if (item.get("is_unrestricted")) { %>','
',"This dataset is unrestricted so everybody can access it. Just share the URL of this page. ",' ","
","<% } %>",'
','',"",'','',"",'<% if (item.get("file_ext")) { %>',"",'','',"","<% } %>",'<% if (item.get("genome_build")) { %>',"",'','',"","<% } %>",'<% if (item.get("file_size")) { %>',"",'','',"","<% } %>",'<% if (item.get("date_uploaded")) { %>',"",'','',"","<% } %>",'<% if (item.get("uploaded_by")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_data_lines")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_comment_lines")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_columns")) { %>',"",'','',"","<% } %>",'<% if (item.get("metadata_column_types")) { %>',"",'','',"","<% } %>",'<% if (item.get("message")) { %>',"",'','',"","<% } %>",'<% if (item.get("misc_blurb")) { %>',"",'','',"","<% } %>",'<% if (item.get("misc_info")) { %>',"",'','',"","<% } %>",'<% if (item.get("tags")) { %>',"",'','',"","<% } %>","
">Name<%= _.escape(item.get("name")) %>
Data type<%= _.escape(item.get("file_ext")) %>
Genome build<%= _.escape(item.get("genome_build")) %>
Size<%= _.escape(item.get("file_size")) %>
Date uploaded (UTC)<%= _.escape(item.get("date_uploaded")) %>
Uploaded by<%= _.escape(item.get("uploaded_by")) %>
Data Lines<%= _.escape(item.get("metadata_data_lines")) %>
Comment Lines<%= _.escape(item.get("metadata_comment_lines")) %>
Number of Columns<%= _.escape(item.get("metadata_columns")) %>
Column Types<%= _.escape(item.get("metadata_column_types")) %>
Message<%= _.escape(item.get("message")) %>
Misc. blurb<%= _.escape(item.get("misc_blurb")) %>
Misc. info<%= _.escape(item.get("misc_info")) %>
Tags<%= _.escape(item.get("tags")) %>
","
",'
',"
","
",'<% if (item.get("has_versions")) { %>',"
","

Expired versions:

","
","<% } %>","
","
"].join(""))},templateVersion:function(){return _.template(['
','
','/datasets/<%- item.id %>">','","","
",'",'
This is an expired version of the library dataset: <%= _.escape(item.get("name")) %>
','
','',"",'','',"",'<% if (ldda.get("file_ext")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("genome_build")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("file_size")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("date_uploaded")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("uploaded_by")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_data_lines")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_comment_lines")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_columns")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("metadata_column_types")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("message")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("misc_blurb")) { %>',"",'','',"","<% } %>",'<% if (ldda.get("misc_info")) { %>',"",'','',"","<% } %>",'<% if (item.get("tags")) { %>',"",'','',"","<% } %>","
Name<%= _.escape(ldda.get("name")) %>
Data type<%= _.escape(ldda.get("file_ext")) %>
Genome build<%= _.escape(ldda.get("genome_build")) %>
Size<%= _.escape(ldda.get("file_size")) %>
Date uploaded (UTC)<%= _.escape(ldda.get("date_uploaded")) %>
Uploaded by<%= _.escape(ldda.get("uploaded_by")) %>
Data Lines<%= _.escape(ldda.get("metadata_data_lines")) %>
Comment Lines<%= _.escape(ldda.get("metadata_comment_lines")) %>
Number of Columns<%= _.escape(ldda.get("metadata_columns")) %>
Column Types<%= _.escape(ldda.get("metadata_column_types")) %>
Message<%= _.escape(ldda.get("message")) %>
Miscellaneous blurb<%= _.escape(ldda.get("misc_blurb")) %>
Miscellaneous information<%= _.escape(ldda.get("misc_info")) %>
Tags<%= _.escape(item.get("tags")) %>
","
",'
',"
","
","
","
"].join(""))},templateModifyDataset:function(){return _.template(['
','
','",'","
",'",'
','',"",'','',"","",'',"","","",'',"","","",'','',"","",'','',"","",'','',"",'','','',"",'','<% if (item.get("metadata_comment_lines") === "") { %>','',"<% } else { %>",'',"<% } %>","","",'','',"","",'','',"","",'','',"","",'','',"","",'','',"",'<% if (item.get("tags")) { %>',"",'','',"","<% } %>","
">Name">
Data type",'',"
Genome build",'',"
Size<%= _.escape(item.get("file_size")) %>
Date uploaded (UTC)<%= _.escape(item.get("date_uploaded")) %>
Uploaded by<%= _.escape(item.get("uploaded_by")) %>
Data Lines<%= _.escape(item.get("metadata_data_lines")) %>
Comment Lines<%= _.escape(item.get("metadata_comment_lines")) %>unknown
Number of Columns<%= _.escape(item.get("metadata_columns")) %>
Column Types<%= _.escape(item.get("metadata_column_types")) %>
Message<%= _.escape(item.get("message")) %>
Misc. blurb<%= _.escape(item.get("misc_blurb")) %>
Misc. information">
Tags<%= _.escape(item.get("tags")) %>
","
",'
',"
","
","
","
"].join(""))},templateDatasetPermissions:function(){return _.template(['
','
','">','","",'/datasets/<%- item.id %>">','","","
",'",'

Dataset: <%= _.escape(item.get("name")) %>

','
',"<% if (is_admin) { %>","You are logged in as an administrator therefore you can manage any dataset on this Galaxy instance. Please make sure you understand the consequences.","<% } else { %>","You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.","<% } %>","
",'
',"

Library-related permissions

","

Roles that can modify the library item

",'
','
User with any of these roles can modify name, metadata, and other information about this library item.
',"
","

Dataset-related permissions

",'
Changes made below will affect every library item that was created from this dataset and also every history this dataset is part of.
','<% if (!item.get("is_unrestricted")) { %>',"

You can remove all access restrictions on this dataset. ",'","

","<% } else { %>","This dataset is unrestricted so everybody can access it. Just share the URL of this page.",'","

You can make this dataset private to you. ",'","

","<% } %>","

Roles that can access the dataset

",'
','
',"User has to have all these roles in order to access this dataset."," Users without access permission cannot have other permissions on this dataset."," If there are no access roles set on the dataset it is considered unrestricted.","
","

Roles that can manage permissions on the dataset

",'
','
',"User with any of these roles can manage permissions of this dataset. If you remove yourself you will loose the ability manage this dataset unless you are an admin.","
",'","
","
"].join(""))},templateBulkImportInModal:function(){return _.template(["
",'
',"Select history: ",'","
",'
',"or create new: ",'',"","
","
"].join(""))},templateAccessSelect:function(){return _.template(['"].join(""))}});return{LibraryDatasetView:e}}); //# sourceMappingURL=../../../maps/mvc/library/library-dataset-view.js.map \ No newline at end of file diff --git a/static/scripts/mvc/library/library-folder-view.js b/static/scripts/mvc/library/library-folder-view.js index 0fd741ad81d..26b34f70440 100644 --- a/static/scripts/mvc/library/library-folder-view.js +++ b/static/scripts/mvc/library/library-folder-view.js @@ -1,2 +1,2 @@ -define(["libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(a,b,c){var d=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_save_permissions":"savePermissions"},initialize:function(a){this.options=_.extend(this.options,a),this.options.id&&this.fetchFolder()},fetchFolder:function(c){this.options=_.extend(this.options,c),this.model=new b.FolderAsModel({id:this.options.id});var d=this;this.model.fetch({success:function(){d.options.show_permissions?d.showPermissions():d.render()},error:function(b,c){"undefined"!=typeof c.responseJSON?a.error(c.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):a.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},render:function(a){$(".tooltip").remove(),this.options=_.extend(this.options,a);var b=this.templateFolder();this.$el.html(b({item:this.model})),$(".peek").html(this.model.get("peek")),$("#center [data-toggle]").tooltip()},shareFolder:function(){a.info("Feature coming soon.")},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(b){this.options=_.extend(this.options,b),$(".tooltip").remove();var c=!1;Galaxy.user&&(c=Galaxy.user.isAdmin());var d=this.templateFolderPermissions();this.$el.html(d({folder:this.model,is_admin:c}));var e=this;$.get(Galaxy.root+"api/folders/"+e.id+"/permissions?scope=current").done(function(a){e.prepareSelectBoxes({fetched_permissions:a})}).fail(function(){a.error("An error occurred while attempting to fetch folder permissions.")}),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},_serializeRoles:function(a){for(var b=[],c=0;c=0;c--)b.push(a[c].id);return b},savePermissions:function(){var b=this,c=this._extractIds(this.addSelectObject.$el.select2("data")),d=this._extractIds(this.manageSelectObject.$el.select2("data")),e=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post(Galaxy.root+"api/folders/"+b.id+"/permissions?action=set_permissions",{"add_ids[]":c,"manage_ids[]":d,"modify_ids[]":e}).done(function(c){b.showPermissions({fetched_permissions:c}),a.success("Permissions saved.")}).fail(function(){a.error("An error occurred while attempting to set folder permissions.")})},templateFolder:function(){return _.template(['
','
','",'/datasets/<%- item.id %>/permissions">','","",'","
","

","This dataset is unrestricted so everybody can access it. Just share the URL of this page. ",' ","

",'
','',"",'","","",'<% if (item.get("file_ext")) { %>',"",'',"","","<% } %>","
">',"Name","",'<%= _.escape(item.get("name")) %>',"
Data type",'<%= _.escape(item.get("file_ext")) %>',"
","
","
"].join(""))},templateFolderPermissions:function(){return _.template(['
','","

",'Folder: <%= _.escape(folder.get("name")) %>',"

",'
',"<% if (is_admin) { %>","You are logged in as an administrator therefore you can manage any folder on this Galaxy instance. Please make sure you understand the consequences.","<% } else { %>","You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.","<% }%>","
",'
',"

Folder permissions

","

","Roles that can manage permissions on this folder","

",'
','
',"User with any of these roles can manage permissions on this folder.","
","

","Roles that can add items to this folder","

",'
','
',"User with any of these roles can add items to this folder (folders and datasets).","
","

","Roles that can modify this folder","

",'
','
',"User with any of these roles can modify this folder (name, etc.).","
",'","
","
"].join(""))}});return{FolderView:d}}); +define(["libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(a,b,c){var d=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_save_permissions":"savePermissions"},initialize:function(a){this.options=_.extend(this.options,a),this.options.id&&this.fetchFolder()},fetchFolder:function(c){this.options=_.extend(this.options,c),this.model=new b.FolderAsModel({id:this.options.id});var d=this;this.model.fetch({success:function(){d.options.show_permissions&&d.showPermissions()},error:function(b,c){"undefined"!=typeof c.responseJSON?a.error(c.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):a.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(b){this.options=_.extend(this.options,b),$(".tooltip").remove();var c=!1;Galaxy.user&&(c=Galaxy.user.isAdmin());var d=this.templateFolderPermissions();this.$el.html(d({folder:this.model,is_admin:c}));var e=this;$.get(Galaxy.root+"api/folders/"+e.id+"/permissions?scope=current").done(function(a){e.prepareSelectBoxes({fetched_permissions:a})}).fail(function(){a.error("An error occurred while attempting to fetch folder permissions.")}),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},_serializeRoles:function(a){for(var b=[],c=0;c=0;c--)b.push(a[c].id);return b},savePermissions:function(){var b=this,c=this._extractIds(this.addSelectObject.$el.select2("data")),d=this._extractIds(this.manageSelectObject.$el.select2("data")),e=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post(Galaxy.root+"api/folders/"+b.id+"/permissions?action=set_permissions",{"add_ids[]":c,"manage_ids[]":d,"modify_ids[]":e}).done(function(c){b.showPermissions({fetched_permissions:c}),a.success("Permissions saved.")}).fail(function(){a.error("An error occurred while attempting to set folder permissions.")})},templateFolderPermissions:function(){return _.template(['
','","

",'Folder: <%= _.escape(folder.get("name")) %>',"

",'
',"<% if (is_admin) { %>","You are logged in as an administrator therefore you can manage any folder on this Galaxy instance. Please make sure you understand the consequences.","<% } else { %>","You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.","<% }%>","
",'
',"

Folder permissions

","

","Roles that can manage permissions on this folder","

",'
','
',"User with any of these roles can manage permissions on this folder.","
","

","Roles that can add items to this folder","

",'
','
',"User with any of these roles can add items to this folder (folders and datasets).","
","

","Roles that can modify this folder","

",'
','
',"User with any of these roles can modify this folder (name, etc.).","
",'","
","
"].join(""))}});return{FolderView:d}}); //# sourceMappingURL=../../../maps/mvc/library/library-folder-view.js.map \ No newline at end of file diff --git a/static/scripts/mvc/library/library-foldertoolbar-view.js b/static/scripts/mvc/library/library-foldertoolbar-view.js index 5d7ed9f8a91..29e0e0d78ed 100644 --- a/static/scripts/mvc/library/library-foldertoolbar-view.js +++ b/static/scripts/mvc/library/library-foldertoolbar-view.js @@ -1,4 +1,4 @@ -define(["layout/masthead","utils/utils","libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(a,b,c,d,e){var f=Backbone.View.extend({el:"#center",events:{"click #toolbtn_create_folder":"createFolderFromModal","click #toolbtn_bulk_import":"modalBulkImport","click #include_deleted_datasets_chk":"checkIncludeDeleted","click #toolbtn_bulk_delete":"deleteSelectedItems","click .toolbtn-show-locinfo":"showLocInfo","click .page_size_prompt":"showPageSizePrompt"},defaults:{can_add_library_item:!1,contains_file_or_folder:!1,chain_call_control:{total_number:0,failed_number:0},disabled_jstree_element:"folders"},modal:null,jstree:null,histories:null,select_genome:null,select_extension:null,list_extensions:[],auto:{id:"auto",text:"Auto-detect",description:"This system will try to detect the file type automatically. If your file is not detected properly as one of the known formats, it most likely means that it has some format problems (e.g., different number of columns on different rows). You can still coerce the system to set your data to the format you think it should be. You can also upload compressed files, which will automatically be decompressed."},list_genomes:[],initialize:function(a){this.options=_.defaults(a||{},this.defaults),this.fetchExtAndGenomes(),this.render()},render:function(a){this.options=_.extend(this.options,a);var b=this.templateToolBar(),c={id:this.options.id,is_admin:!1,is_anonym:!0,mutiple_add_dataset_options:!1};Galaxy.user&&(c.is_admin=Galaxy.user.isAdmin(),c.is_anonym=Galaxy.user.isAnonymous(),(null!==Galaxy.config.user_library_import_dir||Galaxy.config.allow_library_path_paste!==!1||null!==Galaxy.config.library_import_dir)&&(c.mutiple_add_dataset_options=!0)),this.$el.html(b(c))},renderPaginator:function(a){this.options=_.extend(this.options,a);var b=this.templatePaginator();$("body").find(".folder-paginator").html(b({id:this.options.id,show_page:parseInt(this.options.show_page),page_count:parseInt(this.options.page_count),total_items_count:this.options.total_items_count,items_shown:this.options.items_shown}))},configureElements:function(a){this.options=_.extend(this.options,a),this.options.can_add_library_item===!0?$(".add-library-items").show():$(".add-library-items").hide(),this.options.contains_file_or_folder===!0&&Galaxy.user?Galaxy.user.isAnonymous()?($(".dataset-manipulation").show(),$(".logged-dataset-manipulation").hide()):($(".logged-dataset-manipulation").show(),$(".dataset-manipulation").show()):($(".logged-dataset-manipulation").hide(),$(".dataset-manipulation").hide()),this.$el.find("[data-toggle]").tooltip()},createFolderFromModal:function(a){a.preventDefault(),a.stopPropagation();var b=this,c=this.templateNewFolderInModal();this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Create New Folder",body:c(),buttons:{Create:function(){b.create_new_folder_event()},Close:function(){Galaxy.modal.hide()}}})},create_new_folder_event:function(){var a=this.serialize_new_folder();if(this.validate_new_folder(a)){var b,e=new d.FolderAsModel,f=Backbone.history.fragment.split("/");b=f.indexOf("page")>-1?f[f.length-3]:f[f.length-1],e.url=e.urlRoot+b,e.save(a,{success:function(a){Galaxy.modal.hide(),c.success("Folder created."),a.set({type:"folder"}),Galaxy.libraries.folderListView.collection.add(a)},error:function(a,b){Galaxy.modal.hide(),c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}})}else c.error("Folder's name is missing.");return!1},serialize_new_folder:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val()}},validate_new_folder:function(a){return""!==a.name},modalBulkImport:function(){var a=$("#folder_table").find(":checked");0===a.length?c.info("You must select some datasets first."):this.refreshUserHistoriesList(function(a){var b=a.templateBulkImportInModal();a.modal=Galaxy.modal,a.modal.show({closing_events:!0,title:"Import into History",body:b({histories:a.histories.models}),buttons:{Import:function(){a.importAllIntoHistory()},Close:function(){Galaxy.modal.hide()}}})})},refreshUserHistoriesList:function(a){var b=this;this.histories=new d.GalaxyHistories,this.histories.fetch({success:function(){a(b)},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}})},importAllIntoHistory:function(){this.modal.disableButton("Import");var a=this.modal.$("input[name=history_name]").val(),b=this;if(""!==a)$.post(Galaxy.root+"api/histories",{name:a}).done(function(a){b.options.last_used_history_id=a.id,b.processImportToHistory(a.id,a.name)}).fail(function(){c.error("An error ocurred.")}).always(function(){b.modal.enableButton("Import")});else{var d=$("select[name=dataset_import_bulk] option:selected").val();this.options.last_used_history_id=d;var e=$("select[name=dataset_import_bulk] option:selected").text();this.processImportToHistory(d,e),this.modal.enableButton("Import")}},processImportToHistory:function(a,b){var c=[],e=[];$("#folder_table").find(":checked").each(function(){""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("dataset_row")?c.push($(this.parentElement.parentElement).data("id")):""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("folder_row")&&e.push($(this.parentElement.parentElement).data("id"))});for(var f=[],g=c.length-1;g>=0;g--){var h=c[g],i=new d.HistoryItem;i.url=i.urlRoot+a+"/contents",i.content=h,i.source="library",f.push(i)}for(var g=e.length-1;g>=0;g--){var j=e[g],i=new d.HistoryItem;i.url=i.urlRoot+a+"/contents",i.content=j,i.source="library_folder",f.push(i)}this.initChainCallControl({length:f.length,action:"to_history",history_name:b}),jQuery.getJSON(Galaxy.root+"history/set_as_current?id="+a),this.chainCallImportingIntoHistory(f,b)},updateProgress:function(){this.progress+=this.progressStep,$(".progress-bar-import").width(Math.round(this.progress)+"%");var a=Math.round(this.progress)+"% Complete";$(".completion_span").text(a)},download:function(a,b){var c=[],d=[];$("#folder_table").find(":checked").each(function(){""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("dataset_row")?c.push($(this.parentElement.parentElement).data("id")):""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("folder_row")&&d.push($(this.parentElement.parentElement).data("id"))});var e=Galaxy.root+"api/libraries/datasets/download/"+b,f={ld_ids:c,folder_ids:d};this.processDownload(e,f,"get")},processDownload:function(a,b,d){if(a&&b){b="string"==typeof b?b:$.param(b);var e="";$.each(b.split("&"),function(){var a=this.split("=");e+=''}),$('
'+e+"
").appendTo("body").submit().remove(),c.info("Your download will begin soon.")}else c.error("An error occurred.")},addFilesFromHistoryModal:function(){this.refreshUserHistoriesList(function(a){a.modal=Galaxy.modal;var b=a.templateAddFilesFromHistory(),d=a.options.full_path[a.options.full_path.length-1][1];a.modal.show({closing_events:!0,title:"Adding datasets from your history to folder "+d,body:b({histories:a.histories.models}),buttons:{Add:function(){a.addAllDatasetsFromHistory()},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.back()}}),a.histories.models.length>0?(a.fetchAndDisplayHistoryContents(a.histories.models[0].id),$("#dataset_add_bulk").change(function(b){a.fetchAndDisplayHistoryContents(b.target.value)})):c.error("An error ocurred.")})},importFilesFromPathModal:function(){var a=this;this.modal=Galaxy.modal;var b=this.templateImportPathModal();this.modal.show({closing_events:!0,title:"Please enter paths to import",body:b({}),buttons:{Import:function(){a.importFromPathsClicked(a)},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.navigate("folders/"+a.id,{trigger:!0})}}),this.renderSelectBoxes()},fetchExtAndGenomes:function(){var a=this;b.get({url:Galaxy.root+"api/datatypes?extension_only=False",success:function(b){a.list_extensions=[];for(var c in b)a.list_extensions.push({id:b[c].extension,text:b[c].extension,description:b[c].description,description_url:b[c].description_url});a.list_extensions.sort(function(a,b){return a.id>b.id?1:a.idb.id?1:a.id=0;h--){var i=f[h].trim();0!==i.length&&g.push(i)}this.initChainCallControl({length:g.length,action:"adding_datasets"}),this.chainCallImportingFolders({paths:g,preserve_dirs:a,link_data:b,source:"admin_path",file_type:d,dbkey:e})}else c.info("Please enter a path relative to Galaxy root.")},initChainCallControl:function(a){var b;switch(a.action){case"adding_datasets":b=this.templateAddingDatasetsProgressBar(),this.modal.$el.find(".modal-body").html(b({folder_name:this.options.folder_name}));break;case"deleting_datasets":b=this.templateDeletingItemsProgressBar(),this.modal.$el.find(".modal-body").html(b());break;case"to_history":b=this.templateImportIntoHistoryProgressBar(),this.modal.$el.find(".modal-body").html(b({history_name:a.history_name}));break;default:Galaxy.emit.error("Wrong action specified.","datalibs")}this.progress=0,this.progressStep=100/a.length,this.options.chain_call_control.total_number=a.length,this.options.chain_call_control.failed_number=0},importFromJstreePath:function(a,b){var d=$("#jstree_browser").jstree().get_selected(!0),e=_.filter(d,function(a){return 0==a.state.disabled}),f=this.modal.$el.find(".preserve-checkbox").is(":checked"),g=this.modal.$el.find(".link-checkbox").is(":checked"),h=this.select_extension.value(),i=this.select_genome.value(),j=this.modal.$el.find(".tag-files").is(":checked"),k=e[0].type,l=[];if(e.length<1)c.info("Please select some items first.");else{this.modal.disableButton("Import");for(var m=e.length-1;m>=0;m--)void 0!==e[m].li_attr.full_path&&l.push(e[m].li_attr.full_path);if(this.initChainCallControl({length:l.length,action:"adding_datasets"}),"folder"===k){var n=b.source+"_folder";this.chainCallImportingFolders({paths:l,preserve_dirs:f,link_data:g,source:n,file_type:h,dbkey:i,tag_using_filenames:j})}else if("file"===k){var n=b.source+"_file";this.chainCallImportingUserdirFiles({paths:l,file_type:h,dbkey:i,source:n,tag_using_filenames:j})}}},fetchAndDisplayHistoryContents:function(a){var b=new d.HistoryContents({id:a}),e=this;b.fetch({success:function(b){var c=e.templateHistoryContents();e.histories.get(a).set({contents:b}),e.modal.$el.find("#selected_history_content").html(c({history_contents:b.models.reverse()}))},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}})},addAllDatasetsFromHistory:function(){var a=this.modal.$el.find("#selected_history_content").find(":checked"),b=[],e=[],f=[];if(a.length<1)c.info("You must select some datasets first.");else{this.modal.disableButton("Add"),a.each(function(){var a=$(this.parentElement).data("id");if(a){var c=$(this.parentElement).data("name");b.push(a),e.push(c)}});for(var g=b.length-1;g>=0;g--){var h=b[g],i=new d.Item;i.url=Galaxy.root+"api/folders/"+this.options.id+"/contents",i.set("collection"===e[g]?{from_hdca_id:h}:{from_hda_id:h}),f.push(i)}this.initChainCallControl({length:f.length,action:"adding_datasets"}),this.chainCallAddingHdas(f)}},chainCallImportingIntoHistory:function(a,b){var d=this,e=a.pop();if("undefined"==typeof e)return 0===this.options.chain_call_control.failed_number?c.success("Selected datasets imported into history. Click this to start analyzing it.","",{onclick:function(){window.location=Galaxy.root}}):this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number?c.error("There was an error and no datasets were imported into history."):this.options.chain_call_control.failed_number=0;i--){var j=new d.Item({id:e[i]});h.push(j)}for(var i=f.length-1;i>=0;i--){var k=new d.FolderAsModel({id:f[i]});h.push(k)}this.options.chain_call_control.total_number=g.length,this.chainCallDeletingItems(h)}},showLocInfo:function(){var a=null,b=this;null!==Galaxy.libraries.libraryListView?(a=Galaxy.libraries.libraryListView.collection.get(this.options.parent_library_id),this.showLocInfoModal(a)):(a=new d.Library({id:this.options.parent_library_id}),a.fetch({success:function(){b.showLocInfoModal(a)},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}}))},showLocInfoModal:function(a){var b=this,c=this.templateLocInfoInModal();this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Location Details",body:c({library:a,options:b.options}),buttons:{Close:function(){Galaxy.modal.hide()}}})},showImportModal:function(a){switch(a.source){case"history":this.addFilesFromHistoryModal();break;case"importdir":this.importFilesFromGalaxyFolderModal({source:"importdir"});break;case"path":this.importFilesFromPathModal();break;case"userdir":this.importFilesFromGalaxyFolderModal({source:"userdir"});break;default:Galaxy.libraries.library_router.back(),c.error("Invalid import source.")}},showPageSizePrompt:function(){var a=prompt("How many items per page do you want to see?",Galaxy.libraries.preferences.get("folder_page_size"));null!=a&&a==parseInt(a)&&(Galaxy.libraries.preferences.set({folder_page_size:parseInt(a)}),Galaxy.libraries.folderListView.render({id:this.options.id,show_page:1}))},templateToolBar:function(){return _.template(['
','
','
',"DATA LIBRARIES",'','",'","<% if(mutiple_add_dataset_options) { %>",'","<% } else { %>",'","<% } %>",'",'",'','",'','','","","","
","",'
',"
",'
',"
"].join(""))},templateLocInfoInModal:function(){return _.template(["
",'',"",'',"","","","","",'',"",'<% if(library.get("description") !== "") { %>',"","",'',"","<% } %>",'<% if(library.get("synopsis") !== "") { %>',"","",'',"","<% } %>",'<% if(library.get("create_time_pretty") !== "") { %>',"","",'',"","<% } %>","","",'',"","","
library
name<%- library.get("name") %>
description<%- library.get("description") %>
synopsis<%- library.get("synopsis") %>
created"><%- library.get("create_time_pretty") %>
id<%- library.get("id") %>
",'',"",'',"","","","","","","",'<% if(options.folder_description !== "") { %>',"","","","","<% } %>","","","","","","
folder
name<%- options.folder_name %>
description<%- options.folder_description %>
id<%- options.id %>
","
"].join(""))},templateNewFolderInModal:function(){return _.template(['
',"
",'','',"
","
"].join(""))},templateBulkImportInModal:function(){return _.template(["
",'
',"Select history: ",'","
",'
',"or create new: ",'',"","
","
"].join(""))},templateImportIntoHistoryProgressBar:function(){return _.template(['
',"Importing selected items to history <%= _.escape(history_name) %>","
",'
','
','0% Complete',"
","
"].join(""))},templateAddingDatasetsProgressBar:function(){return _.template(['
',"Adding selected datasets to library folder <%= _.escape(folder_name) %>","
",'
','
','0% Complete',"
","
"].join(""))},templateDeletingItemsProgressBar:function(){return _.template(['
',"
",'
','
','0% Complete',"
","
"].join(""))},templateBrowserModal:function(){return _.template(['
','
All files you select will be imported into the current folder ignoring their folder structure.
','','
','",'","
",'
','",'","
",'",'","
",'
',"
","
","

You can set extension type and genome for all imported datasets at once:

","
",'Type: ','Genome: ',"
","
",'","
","
"].join(""))},templateImportPathModal:function(){return _.template(['
','
All files within the given folders and their subfolders will be imported into the current folder.
','
','",'","
",'',"
","

You can set extension type and genome for all imported datasets at once:

","
",'Type: ','Genome: ',"
","
"].join(""))},templateAddFilesFromHistory:function(){return _.template(['
',"
","Select history: ",'","
","
",'
',"
","
"].join("")); +define(["layout/masthead","utils/utils","libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(a,b,c,d,e){var f=Backbone.View.extend({el:"#center",events:{"click #toolbtn_create_folder":"createFolderFromModal","click #toolbtn_bulk_import":"modalBulkImport","click #include_deleted_datasets_chk":"checkIncludeDeleted","click #toolbtn_bulk_delete":"deleteSelectedItems","click .toolbtn-show-locinfo":"showLocInfo","click .page_size_prompt":"showPageSizePrompt"},defaults:{can_add_library_item:!1,contains_file_or_folder:!1,chain_call_control:{total_number:0,failed_number:0},disabled_jstree_element:"folders"},modal:null,jstree:null,histories:null,select_genome:null,select_extension:null,list_extensions:[],auto:{id:"auto",text:"Auto-detect",description:"This system will try to detect the file type automatically. If your file is not detected properly as one of the known formats, it most likely means that it has some format problems (e.g., different number of columns on different rows). You can still coerce the system to set your data to the format you think it should be. You can also upload compressed files, which will automatically be decompressed."},list_genomes:[],initialize:function(a){this.options=_.defaults(a||{},this.defaults),this.fetchExtAndGenomes(),this.render()},render:function(a){this.options=_.extend(this.options,a);var b=this.templateToolBar(),c={id:this.options.id,is_admin:!1,is_anonym:!0,mutiple_add_dataset_options:!1};Galaxy.user&&(c.is_admin=Galaxy.user.isAdmin(),c.is_anonym=Galaxy.user.isAnonymous(),(null!==Galaxy.config.user_library_import_dir||Galaxy.config.allow_library_path_paste!==!1||null!==Galaxy.config.library_import_dir)&&(c.mutiple_add_dataset_options=!0)),this.$el.html(b(c))},renderPaginator:function(a){this.options=_.extend(this.options,a);var b=this.templatePaginator();$("body").find(".folder-paginator").html(b({id:this.options.id,show_page:parseInt(this.options.show_page),page_count:parseInt(this.options.page_count),total_items_count:this.options.total_items_count,items_shown:this.options.items_shown}))},configureElements:function(a){this.options=_.extend(this.options,a),this.options.can_add_library_item===!0?$(".add-library-items").show():$(".add-library-items").hide(),this.options.contains_file_or_folder===!0&&Galaxy.user?Galaxy.user.isAnonymous()?($(".dataset-manipulation").show(),$(".logged-dataset-manipulation").hide()):($(".logged-dataset-manipulation").show(),$(".dataset-manipulation").show()):($(".logged-dataset-manipulation").hide(),$(".dataset-manipulation").hide()),this.$el.find("[data-toggle]").tooltip()},createFolderFromModal:function(a){a.preventDefault(),a.stopPropagation();var b=this,c=this.templateNewFolderInModal();this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Create New Folder",body:c(),buttons:{Create:function(){b.create_new_folder_event()},Close:function(){Galaxy.modal.hide()}}})},create_new_folder_event:function(){var a=this.serialize_new_folder();if(this.validate_new_folder(a)){var b,e=new d.FolderAsModel,f=Backbone.history.fragment.split("/");b=f.indexOf("page")>-1?f[f.length-3]:f[f.length-1],e.url=e.urlRoot+b,e.save(a,{success:function(a){Galaxy.modal.hide(),c.success("Folder created."),a.set({type:"folder"}),Galaxy.libraries.folderListView.collection.add(a)},error:function(a,b){Galaxy.modal.hide(),c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}})}else c.error("Folder's name is missing.");return!1},serialize_new_folder:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val()}},validate_new_folder:function(a){return""!==a.name},modalBulkImport:function(){var a=$("#folder_table").find(":checked");0===a.length?c.info("You must select some datasets first."):this.refreshUserHistoriesList(function(a){var b=a.templateBulkImportInModal();a.modal=Galaxy.modal,a.modal.show({closing_events:!0,title:"Import into History",body:b({histories:a.histories.models}),buttons:{Import:function(){a.importAllIntoHistory()},Close:function(){Galaxy.modal.hide()}}})})},refreshUserHistoriesList:function(a){var b=this;this.histories=new d.GalaxyHistories,this.histories.fetch({success:function(){a(b)},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}})},importAllIntoHistory:function(){this.modal.disableButton("Import");var a=this.modal.$("input[name=history_name]").val(),b=this;if(""!==a)$.post(Galaxy.root+"api/histories",{name:a}).done(function(a){b.options.last_used_history_id=a.id,b.processImportToHistory(a.id,a.name)}).fail(function(){c.error("An error ocurred.")}).always(function(){b.modal.enableButton("Import")});else{var d=$("select[name=dataset_import_bulk] option:selected").val();this.options.last_used_history_id=d;var e=$("select[name=dataset_import_bulk] option:selected").text();this.processImportToHistory(d,e),this.modal.enableButton("Import")}},processImportToHistory:function(a,b){var c=[],e=[];$("#folder_table").find(":checked").each(function(){""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("dataset_row")?c.push($(this.parentElement.parentElement).data("id")):""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("folder_row")&&e.push($(this.parentElement.parentElement).data("id"))});for(var f=[],g=c.length-1;g>=0;g--){var h=c[g],i=new d.HistoryItem;i.url=i.urlRoot+a+"/contents",i.content=h,i.source="library",f.push(i)}for(var g=e.length-1;g>=0;g--){var j=e[g],i=new d.HistoryItem;i.url=i.urlRoot+a+"/contents",i.content=j,i.source="library_folder",f.push(i)}this.initChainCallControl({length:f.length,action:"to_history",history_name:b}),jQuery.getJSON(Galaxy.root+"history/set_as_current?id="+a),this.chainCallImportingIntoHistory(f,b)},updateProgress:function(){this.progress+=this.progressStep,$(".progress-bar-import").width(Math.round(this.progress)+"%");var a=Math.round(this.progress)+"% Complete";$(".completion_span").text(a)},download:function(a,b){var c=[],d=[];$("#folder_table").find(":checked").each(function(){""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("dataset_row")?c.push($(this.parentElement.parentElement).data("id")):""!==$(this.parentElement.parentElement).data("id")&&this.parentElement.parentElement.classList.contains("folder_row")&&d.push($(this.parentElement.parentElement).data("id"))});var e=Galaxy.root+"api/libraries/datasets/download/"+b,f={ld_ids:c,folder_ids:d};this.processDownload(e,f,"get")},processDownload:function(a,b,d){if(a&&b){b="string"==typeof b?b:$.param(b);var e="";$.each(b.split("&"),function(){var a=this.split("=");e+=''}),$('
'+e+"
").appendTo("body").submit().remove(),c.info("Your download will begin soon.")}else c.error("An error occurred.")},addFilesFromHistoryModal:function(){this.refreshUserHistoriesList(function(a){a.modal=Galaxy.modal;var b=a.templateAddFilesFromHistory(),d=a.options.full_path[a.options.full_path.length-1][1];a.modal.show({closing_events:!0,title:"Adding datasets from your history to "+d,body:b({histories:a.histories.models}),buttons:{Add:function(){a.addAllDatasetsFromHistory()},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.back()}}),a.histories.models.length>0?(a.fetchAndDisplayHistoryContents(a.histories.models[0].id),$("#dataset_add_bulk").change(function(b){a.fetchAndDisplayHistoryContents(b.target.value)})):c.error("An error ocurred.")})},importFilesFromPathModal:function(){var a=this;this.modal=Galaxy.modal;var b=this.templateImportPathModal();this.modal.show({closing_events:!0,title:"Please enter paths to import",body:b({}),buttons:{Import:function(){a.importFromPathsClicked(a)},Close:function(){Galaxy.modal.hide()}},closing_callback:function(){Galaxy.libraries.library_router.navigate("folders/"+a.id,{trigger:!0})}}),this.renderSelectBoxes()},fetchExtAndGenomes:function(){var a=this;b.get({url:Galaxy.root+"api/datatypes?extension_only=False",success:function(b){a.list_extensions=[];for(var c in b)a.list_extensions.push({id:b[c].extension,text:b[c].extension,description:b[c].description,description_url:b[c].description_url});a.list_extensions.sort(function(a,b){return a.id>b.id?1:a.idb.id?1:a.id=0;h--){var i=f[h].trim();0!==i.length&&g.push(i)}this.initChainCallControl({length:g.length,action:"adding_datasets"}),this.chainCallImportingFolders({paths:g,preserve_dirs:a,link_data:b,source:"admin_path",file_type:d,dbkey:e})}else c.info("Please enter a path relative to Galaxy root.")},initChainCallControl:function(a){var b;switch(a.action){case"adding_datasets":b=this.templateAddingDatasetsProgressBar(),this.modal.$el.find(".modal-body").html(b({folder_name:this.options.folder_name}));break;case"deleting_datasets":b=this.templateDeletingItemsProgressBar(),this.modal.$el.find(".modal-body").html(b());break;case"to_history":b=this.templateImportIntoHistoryProgressBar(),this.modal.$el.find(".modal-body").html(b({history_name:a.history_name}));break;default:Galaxy.emit.error("Wrong action specified.","datalibs")}this.progress=0,this.progressStep=100/a.length,this.options.chain_call_control.total_number=a.length,this.options.chain_call_control.failed_number=0},importFromJstreePath:function(a,b){var d=$("#jstree_browser").jstree().get_selected(!0),e=_.filter(d,function(a){return 0==a.state.disabled}),f=this.modal.$el.find(".preserve-checkbox").is(":checked"),g=this.modal.$el.find(".link-checkbox").is(":checked"),h=this.select_extension.value(),i=this.select_genome.value(),j=this.modal.$el.find(".tag-files").is(":checked"),k=e[0].type,l=[];if(e.length<1)c.info("Please select some items first.");else{this.modal.disableButton("Import");for(var m=e.length-1;m>=0;m--)void 0!==e[m].li_attr.full_path&&l.push(e[m].li_attr.full_path);if(this.initChainCallControl({length:l.length,action:"adding_datasets"}),"folder"===k){var n=b.source+"_folder";this.chainCallImportingFolders({paths:l,preserve_dirs:f,link_data:g,source:n,file_type:h,dbkey:i,tag_using_filenames:j})}else if("file"===k){var n=b.source+"_file";this.chainCallImportingUserdirFiles({paths:l,file_type:h,dbkey:i,source:n,tag_using_filenames:j})}}},fetchAndDisplayHistoryContents:function(a){var b=new d.HistoryContents({id:a}),e=this;b.fetch({success:function(b){var c=e.templateHistoryContents();e.histories.get(a).set({contents:b}),e.modal.$el.find("#selected_history_content").html(c({history_contents:b.models.reverse()})),e.modal.$el.find(".history-import-select-all").bind("click",function(){$("#selected_history_content [type=checkbox]").prop("checked",!0)}),e.modal.$el.find(".history-import-unselect-all").bind("click",function(){$("#selected_history_content [type=checkbox]").prop("checked",!1)})},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}})},addAllDatasetsFromHistory:function(){var a=this.modal.$el.find("#selected_history_content").find(":checked"),b=[],e=[],f=[];if(a.length<1)c.info("You must select some datasets first.");else{this.modal.disableButton("Add"),a.each(function(){var a=$(this.parentElement.parentElement).data("id");if(a){var c=$(this.parentElement.parentElement).data("name");b.push(a),e.push(c)}});for(var g=b.length-1;g>=0;g--){var h=b[g],i=new d.Item;i.url=Galaxy.root+"api/folders/"+this.options.id+"/contents",i.set("collection"===e[g]?{from_hdca_id:h}:{from_hda_id:h}),f.push(i)}this.initChainCallControl({length:f.length,action:"adding_datasets"}),this.chainCallAddingHdas(f)}},chainCallImportingIntoHistory:function(a,b){var d=this,e=a.pop();if("undefined"==typeof e)return 0===this.options.chain_call_control.failed_number?c.success("Selected datasets imported into history. Click this to start analyzing it.","",{onclick:function(){window.location=Galaxy.root}}):this.options.chain_call_control.failed_number===this.options.chain_call_control.total_number?c.error("There was an error and no datasets were imported into history."):this.options.chain_call_control.failed_number=0;i--){var j=new d.Item({id:e[i]});h.push(j)}for(var i=f.length-1;i>=0;i--){var k=new d.FolderAsModel({id:f[i]});h.push(k)}this.options.chain_call_control.total_number=g.length,this.chainCallDeletingItems(h)}},showLocInfo:function(){var a=null,b=this;null!==Galaxy.libraries.libraryListView?(a=Galaxy.libraries.libraryListView.collection.get(this.options.parent_library_id),this.showLocInfoModal(a)):(a=new d.Library({id:this.options.parent_library_id}),a.fetch({success:function(){b.showLocInfoModal(a)},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error ocurred.")}}))},showLocInfoModal:function(a){var b=this,c=this.templateLocInfoInModal();this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Location Details",body:c({library:a,options:b.options}),buttons:{Close:function(){Galaxy.modal.hide()}}})},showImportModal:function(a){switch(a.source){case"history":this.addFilesFromHistoryModal();break;case"importdir":this.importFilesFromGalaxyFolderModal({source:"importdir"});break;case"path":this.importFilesFromPathModal();break;case"userdir":this.importFilesFromGalaxyFolderModal({source:"userdir"});break;default:Galaxy.libraries.library_router.back(),c.error("Invalid import source.")}},showPageSizePrompt:function(){var a=prompt("How many items per page do you want to see?",Galaxy.libraries.preferences.get("folder_page_size"));null!=a&&a==parseInt(a)&&(Galaxy.libraries.preferences.set({folder_page_size:parseInt(a)}),Galaxy.libraries.folderListView.render({id:this.options.id,show_page:1}))},templateToolBar:function(){return _.template(['
','
','
',"DATA LIBRARIES",'','",'","<% if(mutiple_add_dataset_options) { %>",'","<% } else { %>",'","<% } %>",'",'",'','",'','','","","","
","",'
',"
",'
',"
"].join(""))},templateLocInfoInModal:function(){return _.template(["
",'',"",'',"","","","","",'',"",'<% if(library.get("description") !== "") { %>',"","",'',"","<% } %>",'<% if(library.get("synopsis") !== "") { %>',"","",'',"","<% } %>",'<% if(library.get("create_time_pretty") !== "") { %>',"","",'',"","<% } %>","","",'',"","","
library
name<%- library.get("name") %>
description<%- library.get("description") %>
synopsis<%- library.get("synopsis") %>
created"><%- library.get("create_time_pretty") %>
id<%- library.get("id") %>
",'',"",'',"","","","","","","",'<% if(options.folder_description !== "") { %>',"","","","","<% } %>","","","","","","
folder
name<%- options.folder_name %>
description<%- options.folder_description %>
id<%- options.id %>
","
"].join(""))},templateNewFolderInModal:function(){return _.template(['
',"
",'','',"
","
"].join(""))},templateBulkImportInModal:function(){return _.template(["
",'
',"Select history: ",'","
",'
',"or create new: ",'',"","
","
"].join(""))},templateImportIntoHistoryProgressBar:function(){return _.template(['
',"Importing selected items to history <%= _.escape(history_name) %>","
",'
','
','0% Complete',"
","
"].join(""))},templateAddingDatasetsProgressBar:function(){return _.template(['
',"Adding selected datasets to library folder <%= _.escape(folder_name) %>","
",'
','
','0% Complete',"
","
"].join(""))},templateDeletingItemsProgressBar:function(){return _.template(['
',"
",'
','
','0% Complete',"
","
"].join(""))},templateBrowserModal:function(){return _.template(['
','
All files you select will be imported into the current folder ignoring their folder structure.
','','
','",'","
",'
','",'","
",'",'","
",'
',"
","
","

You can set extension type and genome for all imported datasets at once:

","
",'Type: ','Genome: ',"
","
",'","
","
"].join(""))},templateImportPathModal:function(){return _.template(['
','
All files within the given folders and their subfolders will be imported into the current folder.
','
','",'","
",'',"
","

You can set extension type and genome for all imported datasets at once:

","
",'Type: ','Genome: ',"
","
"].join("")); -},templateHistoryContents:function(){return _.template(["Choose the datasets to import:","
    ","<% _.each(history_contents, function(history_item) { %>",'<% if (history_item.get("deleted") != true ) { %>','<% if (history_item.get("type") === "collection") { %>','<% var collection_type = history_item.get("collection_type") %>','<% if (collection_type === "list") { %>','
  • " data-name="<%= _.escape(history_item.get("type")) %>">',' <%= _.escape(history_item.get("hid")) %>: <%= _.escape(history_item.get("name")) %> (Dataset Collection)',"
  • ","<% } else { %>",'
  • ','',' <%= _.escape(history_item.get("hid")) %>: <%= _.escape(history_item.get("name")) %> (Dataset Collection of type <%= _.escape(collection_type) %> not supported.)',"","
  • ","<% } %>",'<% } else if (history_item.get("visible") === true && history_item.get("state") === "ok") { %>','
  • " data-name="<%= _.escape(history_item.get("type")) %>">',' <%= _.escape(history_item.get("hid")) %>: <%= _.escape(history_item.get("name")) %>',"
  • ","<% } %>","<% } %>","<% }); %>","
"].join(""))},templatePaginator:function(){return _.template(['",""," showing ",'',"<%- items_shown %>",""," of <%- total_items_count %> items",""].join(""))}});return{FolderToolbarView:f}}); +},templateAddFilesFromHistory:function(){return _.template(['
',"
","Select history: ",'","
","
",'
',"
","
"].join(""))},templateHistoryContents:function(){return _.template(["Choose the datasets to import:","
    ","<% _.each(history_contents, function(history_item) { %>",'<% if (history_item.get("deleted") != true ) { %>','<% var item_name = history_item.get("name") %>','<% if (history_item.get("type") === "collection") { %>','<% var collection_type = history_item.get("collection_type") %>','<% if (collection_type === "list") { %>','
  • " data-name="<%= _.escape(history_item.get("type")) %>">',"
  • ","<% } else { %>",'
  • ','','<%= _.escape(history_item.get("hid")) %>: ','<%= item_name.length > 75 ? _.escape("...".concat(item_name.substr(-75))) : _.escape(item_name) %> (Dataset Collection of type <%= _.escape(collection_type) %> not supported.)',"","
  • ","<% } %>",'<% } else if (history_item.get("visible") === true && history_item.get("state") === "ok") { %>','
  • " data-name="<%= _.escape(history_item.get("type")) %>">','","
  • ","<% } %>","<% } %>","<% }); %>","
",'",'"].join(""))},templatePaginator:function(){return _.template(['",""," showing ",'',"<%- items_shown %>",""," of <%- total_items_count %> items",""].join(""))}});return{FolderToolbarView:f}}); //# sourceMappingURL=../../../maps/mvc/library/library-foldertoolbar-view.js.map \ No newline at end of file diff --git a/static/scripts/mvc/library/library-library-view.js b/static/scripts/mvc/library/library-library-view.js index 38b9b4444a3..8362a1e144f 100644 --- a/static/scripts/mvc/library/library-library-view.js +++ b/static/scripts/mvc/library/library-library-view.js @@ -1,2 +1,2 @@ -define(["libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(a,b,c){var d=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_save_permissions":"savePermissions"},initialize:function(a){this.options=_.extend(this.options,a),this.options.id&&this.fetchLibrary()},fetchLibrary:function(c){this.options=_.extend(this.options,c),this.model=new b.Library({id:this.options.id});var d=this;this.model.fetch({success:function(){d.options.show_permissions?d.showPermissions():d.render()},error:function(b,c){"undefined"!=typeof c.responseJSON?a.error(c.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):a.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},render:function(a){$(".tooltip").remove(),this.options=_.extend(this.options,a);var b=this.templateLibrary();this.$el.html(b({item:this.model})),$("#center [data-toggle]").tooltip()},shareDataset:function(){a.info("Feature coming soon.")},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(b){this.options=_.extend(this.options,b),$(".tooltip").remove(),void 0!==this.options.fetched_permissions&&this.model.set(0===this.options.fetched_permissions.access_library_role_list.length?{is_unrestricted:!0}:{is_unrestricted:!1});var c=!1;Galaxy.user&&(c=Galaxy.user.isAdmin());var d=this.templateLibraryPermissions();this.$el.html(d({library:this.model,is_admin:c}));var e=this;$.get(Galaxy.root+"api/libraries/"+e.id+"/permissions?scope=current").done(function(a){e.prepareSelectBoxes({fetched_permissions:a})}).fail(function(){a.error("An error occurred while attempting to fetch library permissions.")}),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},_serializeRoles:function(a){for(var b=[],c=0;c=0;c--)b.push(a[c].id);return b},savePermissions:function(){var b=this,c=this._extractIds(this.accessSelectObject.$el.select2("data")),d=this._extractIds(this.addSelectObject.$el.select2("data")),e=this._extractIds(this.manageSelectObject.$el.select2("data")),f=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post(Galaxy.root+"api/libraries/"+b.id+"/permissions?action=set_permissions",{"access_ids[]":c,"add_ids[]":d,"manage_ids[]":e,"modify_ids[]":f}).done(function(c){b.showPermissions({fetched_permissions:c}),a.success("Permissions saved.")}).fail(function(){a.error("An error occurred while attempting to set library permissions.")})},templateLibrary:function(){return _.template(['
','
','",'/datasets/<%- item.id %>/permissions">','","",'","
","

","This dataset is unrestricted so everybody can access it. Just share the URL of this page. ",' ","

",'
','',"",'","","",'<% if (item.get("file_ext")) { %>',"",'',"","","<% } %>","
">',"Name","",'<%= _.escape(item.get("name")) %>',"
Data type",'<%= _.escape(item.get("file_ext")) %>',"
","
","
"].join(""))},templateLibraryPermissions:function(){return _.template(['
','","

",'Library: <%= _.escape(library.get("name")) %>',"

",'
',"<% if (is_admin) { %>","You are logged in as an administrator therefore you can manage any library on this Galaxy instance. Please make sure you understand the consequences.","<% } else { %>","You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.","<% }%>","
",'
',"

Library permissions

","

Roles that can access the library

",'
','
',"User with any of these roles can access this library. If there are no access roles set on the library it is considered unrestricted.","
","

Roles that can manage permissions on this library

",'
','
',"User with any of these roles can manage permissions on this library (includes giving access).","
","

Roles that can add items to this library

",'
','
',"User with any of these roles can add items to this library (folders and datasets).","
","

Roles that can modify this library

",'
','
',"User with any of these roles can modify this library (name, synopsis, etc.).","
",'","
","
"].join(""))}});return{LibraryView:d}}); +define(["libs/toastr","mvc/library/library-model","mvc/ui/ui-select"],function(a,b,c){var d=Backbone.View.extend({el:"#center",model:null,options:{},events:{"click .toolbtn_save_permissions":"savePermissions"},initialize:function(a){this.options=_.extend(this.options,a),this.options.id&&this.fetchLibrary()},fetchLibrary:function(c){this.options=_.extend(this.options,c),this.model=new b.Library({id:this.options.id});var d=this;this.model.fetch({success:function(){d.options.show_permissions&&d.showPermissions()},error:function(b,c){"undefined"!=typeof c.responseJSON?a.error(c.responseJSON.err_msg+" Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}}):a.error("An error ocurred. Click this to go back.","",{onclick:function(){Galaxy.libraries.library_router.back()}})}})},goBack:function(){Galaxy.libraries.library_router.back()},showPermissions:function(b){this.options=_.extend(this.options,b),$(".tooltip").remove(),void 0!==this.options.fetched_permissions&&this.model.set(0===this.options.fetched_permissions.access_library_role_list.length?{is_unrestricted:!0}:{is_unrestricted:!1});var c=!1;Galaxy.user&&(c=Galaxy.user.isAdmin());var d=this.templateLibraryPermissions();this.$el.html(d({library:this.model,is_admin:c}));var e=this;$.get(Galaxy.root+"api/libraries/"+e.id+"/permissions?scope=current").done(function(a){e.prepareSelectBoxes({fetched_permissions:a})}).fail(function(){a.error("An error occurred while attempting to fetch library permissions.")}),$("#center [data-toggle]").tooltip(),$("#center").css("overflow","auto")},_serializeRoles:function(a){for(var b=[],c=0;c=0;c--)b.push(a[c].id);return b},savePermissions:function(){var b=this,c=this._extractIds(this.accessSelectObject.$el.select2("data")),d=this._extractIds(this.addSelectObject.$el.select2("data")),e=this._extractIds(this.manageSelectObject.$el.select2("data")),f=this._extractIds(this.modifySelectObject.$el.select2("data"));$.post(Galaxy.root+"api/libraries/"+b.id+"/permissions?action=set_permissions",{"access_ids[]":c,"add_ids[]":d,"manage_ids[]":e,"modify_ids[]":f}).done(function(c){b.showPermissions({fetched_permissions:c}),a.success("Permissions saved.")}).fail(function(){a.error("An error occurred while attempting to set library permissions.")})},templateLibraryPermissions:function(){return _.template(['
','","

",'Library: <%= _.escape(library.get("name")) %>',"

",'
',"<% if (is_admin) { %>","You are logged in as an administrator therefore you can manage any library on this Galaxy instance. Please make sure you understand the consequences.","<% } else { %>","You can assign any number of roles to any of the following permission types. However please read carefully the implications of such actions.","<% }%>","
",'
',"

Library permissions

","

Roles that can access the library

",'
','
',"User with any of these roles can access this library. If there are no access roles set on the library it is considered unrestricted.","
","

Roles that can manage permissions on this library

",'
','
',"User with any of these roles can manage permissions on this library (includes giving access).","
","

Roles that can add items to this library

",'
','
',"User with any of these roles can add items to this library (folders and datasets).","
","

Roles that can modify this library

",'
','
',"User with any of these roles can modify this library (name, synopsis, etc.).","
",'","
","
"].join(""))}});return{LibraryView:d}}); //# sourceMappingURL=../../../maps/mvc/library/library-library-view.js.map \ No newline at end of file diff --git a/static/scripts/mvc/library/library-librarytoolbar-view.js b/static/scripts/mvc/library/library-librarytoolbar-view.js index 814de0e64de..8fab3537d6f 100644 --- a/static/scripts/mvc/library/library-librarytoolbar-view.js +++ b/static/scripts/mvc/library/library-librarytoolbar-view.js @@ -1,2 +1,2 @@ -define(["libs/toastr","mvc/library/library-model"],function(a,b){var c=Backbone.View.extend({el:"#center",defaults:{search_term:""},events:{"click #create_new_library_btn":"createLibraryFromModal","click #include_deleted_chk":"includeDeletedChecked","click #exclude_restricted_chk":"excludeRestrictedChecked","click #lib_page_size_prompt":"showPageSizePrompt","keyup .library-search-input":"searchLibraries"},initialize:function(a){this.options=_.defaults(this.options||{},a,this.defaults),this.render()},render:function(){var a=this.templateToolBar(),b=!1,c=!0;Galaxy.user&&(b=Galaxy.user.isAdmin(),c=Galaxy.user.isAnonymous()),this.$el.html(a({admin_user:b,anon_user:c})),b&&(this.$el.find("#include_deleted_chk")[0].checked=Galaxy.libraries.preferences.get("with_deleted"),this.$el.find("#exclude_restricted_chk")[0].checked=Galaxy.libraries.preferences.get("without_restricted"))},renderPaginator:function(a){this.options=_.extend(this.options,a);var b=this.templatePaginator();this.$el.find("#library_paginator").html(b({show_page:parseInt(this.options.show_page),page_count:parseInt(this.options.page_count),total_libraries_count:this.options.total_libraries_count,libraries_shown:this.options.libraries_shown}))},createLibraryFromModal:function(a){a.preventDefault(),a.stopPropagation();var b=this;this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Create New Library",body:this.templateNewLibraryInModal(),buttons:{Create:function(){b.createNewLibrary()},Close:function(){b.modal.hide()}}})},createNewLibrary:function(){var c=this.serializeNewLibrary();if(this.validateNewLibrary(c)){var d=new b.Library,e=this;d.save(c,{success:function(b){Galaxy.libraries.libraryListView.collection.add(b),e.modal.hide(),e.clearLibraryModal(),Galaxy.libraries.libraryListView.render(),a.success("Library created.")},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error occured.")}})}else a.error("Library's name is missing.");return!1},showPageSizePrompt:function(){var a=prompt("How many libraries per page do you want to see?",Galaxy.libraries.preferences.get("library_page_size"));null!=a&&a==parseInt(a)&&(Galaxy.libraries.preferences.set({library_page_size:parseInt(a)}),Galaxy.libraries.libraryListView.render({show_page:1}))},clearLibraryModal:function(){$("input[name='Name']").val(""),$("input[name='Description']").val(""),$("input[name='Synopsis']").val("")},serializeNewLibrary:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val(),synopsis:$("input[name='Synopsis']").val()}},validateNewLibrary:function(a){return""!==a.name},includeDeletedChecked:function(a){a.target.checked?(Galaxy.libraries.preferences.set({with_deleted:!0}),Galaxy.libraries.libraryListView.fetchDeleted()):(Galaxy.libraries.preferences.set({with_deleted:!1}),Galaxy.libraries.libraryListView.render())},excludeRestrictedChecked:function(a){Galaxy.libraries.preferences.set(a.target.checked?{without_restricted:!0}:{without_restricted:!1}),Galaxy.libraries.libraryListView.render()},searchLibraries:function(){var a=$(".library-search-input").val();this.options.search_term=a,Galaxy.libraries.libraryListView.searchLibraries(a)},templateToolBar:function(){return _.template(['
','
','
','
','DATA LIBRARIES','',"",'
','',"
","<% if(admin_user === true) { %>",'
',"","","
",'','',"","<% } %>",'','','',"","","
","
","
",'
',"
","
"].join(""))},templatePaginator:function(){return _.template(['",'',' showing <%- libraries_shown %> of <%- total_libraries_count %> libraries',""].join(""))},templateNewLibraryInModal:function(){return _.template(['
',"
",'','','',"
","
"].join(""))}});return{LibraryToolbarView:c}}); +define(["libs/toastr","mvc/library/library-model"],function(a,b){var c=Backbone.View.extend({el:"#center",defaults:{search_term:""},events:{"click #create_new_library_btn":"createLibraryFromModal","click #include_deleted_chk":"includeDeletedChecked","click #exclude_restricted_chk":"excludeRestrictedChecked","click #lib_page_size_prompt":"showPageSizePrompt","keyup .library-search-input":"searchLibraries"},initialize:function(a){this.options=_.defaults(this.options||{},a,this.defaults),this.render()},render:function(){var a=this.templateToolBar(),b=!1,c=!0;Galaxy.user&&(b=Galaxy.user.isAdmin(),c=Galaxy.user.isAnonymous()),this.$el.html(a({admin_user:b,anon_user:c})),b&&(this.$el.find("#include_deleted_chk")[0].checked=Galaxy.libraries.preferences.get("with_deleted"),this.$el.find("#exclude_restricted_chk")[0].checked=Galaxy.libraries.preferences.get("without_restricted"))},renderPaginator:function(a){this.options=_.extend(this.options,a);var b=this.templatePaginator();this.$el.find("#library_paginator").html(b({show_page:parseInt(this.options.show_page),page_count:parseInt(this.options.page_count),total_libraries_count:this.options.total_libraries_count,libraries_shown:this.options.libraries_shown}))},createLibraryFromModal:function(a){a.preventDefault(),a.stopPropagation();var b=this;this.modal=Galaxy.modal,this.modal.show({closing_events:!0,title:"Create New Library",body:this.templateNewLibraryInModal(),buttons:{Create:function(){b.createNewLibrary()},Close:function(){b.modal.hide()}}})},createNewLibrary:function(){var c=this.serializeNewLibrary();if(this.validateNewLibrary(c)){var d=new b.Library,e=this;d.save(c,{success:function(b){Galaxy.libraries.libraryListView.collection.add(b),e.modal.hide(),e.clearLibraryModal(),Galaxy.libraries.libraryListView.render(),a.success("Library created.")},error:function(b,c){a.error("undefined"!=typeof c.responseJSON?c.responseJSON.err_msg:"An error occured.")}})}else a.error("Library's name is missing.");return!1},showPageSizePrompt:function(){var a=prompt("How many libraries per page do you want to see?",Galaxy.libraries.preferences.get("library_page_size"));null!=a&&a==parseInt(a)&&(Galaxy.libraries.preferences.set({library_page_size:parseInt(a)}),Galaxy.libraries.libraryListView.render({show_page:1}))},clearLibraryModal:function(){$("input[name='Name']").val(""),$("input[name='Description']").val(""),$("input[name='Synopsis']").val("")},serializeNewLibrary:function(){return{name:$("input[name='Name']").val(),description:$("input[name='Description']").val(),synopsis:$("input[name='Synopsis']").val()}},validateNewLibrary:function(a){return""!==a.name},includeDeletedChecked:function(a){a.target.checked?(Galaxy.libraries.preferences.set({with_deleted:!0}),Galaxy.libraries.libraryListView.fetchDeleted()):(Galaxy.libraries.preferences.set({with_deleted:!1}),Galaxy.libraries.libraryListView.render())},excludeRestrictedChecked:function(a){Galaxy.libraries.preferences.set(a.target.checked?{without_restricted:!0}:{without_restricted:!1}),Galaxy.libraries.libraryListView.render()},searchLibraries:function(){var a=$(".library-search-input").val();this.options.search_term=a,Galaxy.libraries.libraryListView.searchLibraries(a)},templateToolBar:function(){return _.template(['
','
','
','
','DATA LIBRARIES','',"",'
','',"
","<% if(admin_user === true) { %>",'
',"","","
",'','',"","<% } %>",'','','',"","","
","
","
",'
',"
","
"].join(""))},templatePaginator:function(){return _.template(['",'',' showing <%- libraries_shown %> of <%- total_libraries_count %> libraries',""].join(""))},templateNewLibraryInModal:function(){return _.template(['
',"
",'','','',"
","
"].join(""))}});return{LibraryToolbarView:c}}); //# sourceMappingURL=../../../maps/mvc/library/library-librarytoolbar-view.js.map \ No newline at end of file diff --git a/test/api/test_libraries.py b/test/api/test_libraries.py index d82ce93a007..b89019d106b 100644 --- a/test/api/test_libraries.py +++ b/test/api/test_libraries.py @@ -113,6 +113,34 @@ class LibrariesApiTestCase(api.ApiTestCase, TestsDatasets): self._assert_status_code_is(create_response, 200) self._assert_has_keys(create_response.json(), "name", "id") + def test_update_dataset_in_folder(self): + library = self.library_populator.new_private_library("ForUpdateDataset") + folder_response = self._create_folder(library) + self._assert_status_code_is(folder_response, 200) + folder_id = folder_response.json()[0]['id'] + history_id = self.dataset_populator.new_history() + hda_id = self.dataset_populator.new_dataset(history_id, content="1 2 3")['id'] + payload = {'from_hda_id': hda_id, 'create_type': 'file', 'folder_id': folder_id} + ld = self._post("libraries/%s/contents" % folder_id, payload) + data = {'name': 'updated_name', 'file_ext': 'fastq', 'misc_info': 'updated_info', 'genome_build': 'updated_genome_build'} + create_response = self._patch("libraries/datasets/%s" % ld.json()["id"], data=data) + self._assert_status_code_is(create_response, 200) + self._assert_has_keys(create_response.json(), "name", "file_ext", "misc_info", "genome_build") + + def test_invalid_update_dataset_in_folder(self): + library = self.library_populator.new_private_library("ForInvalidUpdateDataset") + folder_response = self._create_folder(library) + self._assert_status_code_is(folder_response, 200) + folder_id = folder_response.json()[0]['id'] + history_id = self.dataset_populator.new_history() + hda_id = self.dataset_populator.new_dataset(history_id, content="1 2 3")['id'] + payload = {'from_hda_id': hda_id, 'create_type': 'file', 'folder_id': folder_id} + ld = self._post("libraries/%s/contents" % folder_id, payload) + data = {'file_ext': 'nonexisting_type'} + create_response = self._patch("libraries/datasets/%s" % ld.json()["id"], data=data) + self._assert_status_code_is(create_response, 400) + assert 'This Galaxy does not recognize the datatype of:' in create_response.json()['err_msg'] + def test_create_datasets_in_library_from_collection(self): library = self.library_populator.new_private_library("ForCreateDatasetsFromCollection") folder_response = self._create_folder(library)