mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
2 lines
9.3 KiB
JavaScript
2 lines
9.3 KiB
JavaScript
define(["galaxy.masthead","utils/utils","libs/toastr"],function(a,b,c){var d=Backbone.View.extend({events:{"click .edit_library_btn":"edit_button_clicked","click .cancel_library_btn":"cancel_library_modification","click .save_library_btn":"save_library_modification","click .delete_library_btn":"delete_library","click .undelete_library_btn":"undelete_library"},edit_mode:!1,element_visibility_config:{upload_library_btn:!1,edit_library_btn:!1,permission_library_btn:!1,save_library_btn:!1,cancel_library_btn:!1,delete_library_btn:!1,undelete_library_btn:!1},initialize:function(a){this.render(a)},render:function(a){"undefined"==typeof a&&(a=Galaxy.libraries.libraryListView.collection.get(this.$el.data("id"))),this.prepareButtons(a);var b=this.templateRow();return this.setElement(b({library:a,button_config:this.element_visibility_config,edit_mode:this.edit_mode})),this.$el.show(),this},repaint:function(a){$(".tooltip").hide();var b=this.$el;this.render(a),b.replaceWith(this.$el),this.$el.find("[data-toggle]").tooltip()},prepareButtons:function(a){vis_config=this.element_visibility_config,this.edit_mode===!1?(vis_config.save_library_btn=!1,vis_config.cancel_library_btn=!1,vis_config.delete_library_btn=!1,a.get("deleted")===!0?(vis_config.undelete_library_btn=!0,vis_config.upload_library_btn=!1,vis_config.edit_library_btn=!1,vis_config.permission_library_btn=!1):a.get("deleted")===!1&&(vis_config.save_library_btn=!1,vis_config.cancel_library_btn=!1,vis_config.undelete_library_btn=!1,a.get("can_user_add")===!0&&(vis_config.upload_library_btn=!0),a.get("can_user_modify")===!0&&(vis_config.edit_library_btn=!0),a.get("can_user_manage")===!0&&(vis_config.permission_library_btn=!0))):this.edit_mode===!0&&(vis_config.upload_library_btn=!1,vis_config.edit_library_btn=!1,vis_config.permission_library_btn=!1,vis_config.save_library_btn=!0,vis_config.cancel_library_btn=!0,vis_config.delete_library_btn=!0,vis_config.undelete_library_btn=!1),this.element_visibility_config=vis_config},edit_button_clicked:function(){this.edit_mode=!0,this.repaint()},cancel_library_modification:function(){this.edit_mode=!1,this.repaint()},save_library_modification:function(){var a=Galaxy.libraries.libraryListView.collection.get(this.$el.data("id")),b=!1,d=this.$el.find(".input_library_name").val();if("undefined"!=typeof d&&d!==a.get("name")){if(!(d.length>2))return void c.warning("Library name has to be at least 3 characters long.");a.set("name",d),b=!0}var e=this.$el.find(".input_library_description").val();"undefined"!=typeof e&&e!==a.get("description")&&(a.set("description",e),b=!0);var f=this.$el.find(".input_library_synopsis").val();if("undefined"!=typeof f&&f!==a.get("synopsis")&&(a.set("synopsis",f),b=!0),b){var g=this;a.save(null,{patch:!0,success:function(a){g.edit_mode=!1,g.repaint(a),c.success("Changes to library saved.")},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error occured while attempting to update the library.")}})}else this.edit_mode=!1,this.repaint(a),c.info("Nothing has changed.")},delete_library:function(){var a=Galaxy.libraries.libraryListView.collection.get(this.$el.data("id")),b=this;a.destroy({success:function(a){a.set("deleted",!0),Galaxy.libraries.libraryListView.collection.add(a),b.edit_mode=!1,Galaxy.libraries.preferences.get("with_deleted")===!1?($(".tooltip").hide(),b.repaint(a),b.$el.remove()):Galaxy.libraries.preferences.get("with_deleted")===!0&&b.repaint(a),c.success("Library has been marked deleted.")},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error occured during deleting the library.")}})},undelete_library:function(){var a=Galaxy.libraries.libraryListView.collection.get(this.$el.data("id")),b=this;a.url=a.urlRoot+a.id+"?undelete=true",a.destroy({success:function(a){a.set("deleted",!1),Galaxy.libraries.libraryListView.collection.add(a),b.edit_mode=!1,b.repaint(a),c.success("Library has been undeleted.")},error:function(a,b){c.error("undefined"!=typeof b.responseJSON?b.responseJSON.err_msg:"An error occured while undeleting the library.")}})},templateRow:function(){return tmpl_array=[],tmpl_array.push(' <tr class="<% if(library.get("deleted") === true) { print("active") } %>" style="display:none;" data-id="<%- library.get("id") %>">'),tmpl_array.push(" <% if(!edit_mode) { %>"),tmpl_array.push(' <% if(library.get("deleted")) { %>'),tmpl_array.push(' <td style="color:grey;"><span data-toggle="tooltip" data-placement="top" title="Marked deleted" style="color:grey;" class="fa fa-ban fa-lg deleted_lib_ico"> </span> <%- library.get("name") %></td>'),tmpl_array.push(" <% } else { %>"),tmpl_array.push(' <td><a href="#folders/<%- library.get("root_folder_id") %>"><%- library.get("name") %></a></td>'),tmpl_array.push(" <% } %>"),tmpl_array.push(' <% if(library.get("description")) { %>'),tmpl_array.push(' <% if( (library.get("description")).length> 80 ) { %>'),tmpl_array.push(' <td data-toggle="tooltip" data-placement="bottom" title="<%= _.escape(library.get("description")) %>"><%= _.escape(library.get("description")).substring(0, 80) + "..." %></td>'),tmpl_array.push(" <% } else { %>"),tmpl_array.push(' <td><%= _.escape(library.get("description"))%></td>'),tmpl_array.push(" <% } %>"),tmpl_array.push(" <% } else { %>"),tmpl_array.push(" <td></td>"),tmpl_array.push(" <% } %>"),tmpl_array.push(' <% if(library.get("synopsis")) { %>'),tmpl_array.push(' <% if( (library.get("synopsis")).length> 120 ) { %>'),tmpl_array.push(' <td data-toggle="tooltip" data-placement="bottom" title="<%= _.escape(library.get("synopsis")) %>"><%= _.escape(library.get("synopsis")).substring(0, 120) + "..." %></td>'),tmpl_array.push(" <% } else { %>"),tmpl_array.push(' <td><%= _.escape(library.get("synopsis"))%></td>'),tmpl_array.push(" <% } %>"),tmpl_array.push(" <% } else { %>"),tmpl_array.push(" <td></td>"),tmpl_array.push(" <% } %>"),tmpl_array.push(" <% } else if(edit_mode){ %>"),tmpl_array.push(' <td><textarea rows="4" class="form-control input_library_name" placeholder="name" ><%- library.get("name") %></textarea></td>'),tmpl_array.push(' <td><textarea rows="4" class="form-control input_library_description" placeholder="description" ><%- library.get("description") %></textarea></td>'),tmpl_array.push(' <td><textarea rows="4" class="form-control input_library_synopsis" placeholder="synopsis" ><%- library.get("synopsis") %></textarea></td>'),tmpl_array.push(" <% } %>"),tmpl_array.push(' <td class="right-center">'),tmpl_array.push(' <% if( (library.get("public")) && (library.get("deleted") === false) ) { %>'),tmpl_array.push(' <span data-toggle="tooltip" data-placement="top" title="Unrestricted library" style="color:grey;" class="fa fa-globe fa-lg public_lib_ico"> </span>'),tmpl_array.push(" <% }%>"),tmpl_array.push(' <button data-toggle="tooltip" data-placement="top" title="Modify <%- library.get("name") %>" class="primary-button btn-xs edit_library_btn" type="button" style="<% if(button_config.edit_library_btn === false) { print("display:none;") } %>"><span class="fa fa-pencil"></span></button>'),tmpl_array.push(' <a href="#library/<%- library.get("id") %>/permissions"> <button data-toggle="tooltip" data-placement="top" title="Modify permissions" class="primary-button btn-xs permission_library_btn" type="button" style="<% if(button_config.permission_library_btn === false) { print("display:none;") } %>"><span class="fa fa-group"></span></button></a>'),tmpl_array.push(' <button data-toggle="tooltip" data-placement="top" title="Save changes" class="primary-button btn-xs save_library_btn" type="button" style="<% if(button_config.save_library_btn === false) { print("display:none;") } %>"><span class="fa fa-floppy-o"> Save</span></button>'),tmpl_array.push(' <button data-toggle="tooltip" data-placement="top" title="Discard changes" class="primary-button btn-xs cancel_library_btn" type="button" style="<% if(button_config.cancel_library_btn === false) { print("display:none;") } %>"><span class="fa fa-times"> Cancel</span></button>'),tmpl_array.push(' <button data-toggle="tooltip" data-placement="top" title="Delete <%- library.get("name") %>" class="primary-button btn-xs delete_library_btn" type="button" style="<% if(button_config.delete_library_btn === false) { print("display:none;") } %>"><span class="fa fa-trash-o"> Delete</span></button>'),tmpl_array.push(' <button data-toggle="tooltip" data-placement="top" title="Undelete <%- library.get("name") %> " class="primary-button btn-xs undelete_library_btn" type="button" style="<% if(button_config.undelete_library_btn === false) { print("display:none;") } %>"><span class="fa fa-unlock"> Undelete</span></button>'),tmpl_array.push(" </td>"),tmpl_array.push(" </tr>"),_.template(tmpl_array.join(""))}});return{LibraryRowView:d}});
|
|
//# sourceMappingURL=../../../maps/mvc/library/library-libraryrow-view.js.map
|