{"version":3,"sources":["_layouts/core/sections/sectionlist.js","_layouts/core/sections/section.js","_layouts/core/sections/editsectionwindow.js","_layouts/core/sections/removesectionwindow.js"],"names":["Librarian","SectionList","Class","Implements","Options","Binds","options","container","allowDrag","allowHeaderDrag","allowEdit","size","tileListStyle","sectionClassPrefix","targetList","sections","dataRequest","data","initialize","this","setOptions","$","empty","contains","tileList","defaultCartSize","defaultSize","reset","i","length","destroy","loadFromData","name","type","sectionType","myFavorite","contenttype","contentType","file","globalFavorite","url","path","getMethodUrl","fileid","expandGroupItemsToSlides","Request","JSON","onSuccess","onLoadComplete","onFailure","Utils","send","json","totalItems","contents","contentname","addSection","description","pageHeader","load","items","sectionContainerEl","Element","injectInside","section","Section","classPrefix","push","removeSection","index","removeSlides","updateIndex","userCart","remove","Cart","onChange","removeAllSections","selectAll","select","selectFile","sectionIndex","reloadThumbnails","getUnCheckedElements","uncheckedElements","combine","reload","getItemStyle","onDragStart","e","dragState","dragStart","returnValue","preventDefault","onDragEnd","notDragging","onDragItem","item","parentTop","parentHeight","parentItem","className","droppables","dragging","rightClick","stop","getSize","getTop","getHeight","getOffsetParent","$$","clone","setStyles","left","page","x","top","y","width","getWidth","opacity","position","zIndex","inject","document","body","makeDraggable","onEnter","draggable","droppable","swapClass","underEl","onLeave","onDrop","fromSection","each","el","hasClass","getAttribute","toSection","swapSections","toInt","onCancel","onDrag","scrollTop","mouseY","scrollTo","start","editWindow","removeWindow","list","titleEl","descEl","addClass","Lang","getString","replaceAll","render","elements","windows","close","editEl","headerEl","class","buttonContEl","removeEl","addOnClick","onEditClicked","onRemoveClicked","bodyEl","setElementValue","appendChild","setAttribute","addEvent","TileList","id","Date","getTime","itemStyle","isSection","loadFromArray","windowEl","EditSectionWindow","onCloseComplete","bind","MUI","focusWindow","updateSection","updateName","RemoveSectionWindow","Extends","Window","minimizable","height","title","onSubmit","contentURL","getLayoutsPath","parent","onWindowLoaded","setupElements","getElement","itemEl","onSaveClicked","getElementValue","trim","getArgString","onRemoveSectionClicked","onRemoveSlidesClicked","onRemoveAllClicked","getFittedTitle","set","dockTabEl","dockTabTextEl","substring"],"mappings":"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","file":"_layouts\\core\\sections\\sections.bundle.min.js","sourcesContent":["Librarian.SectionList = new Class({\r\n Implements: Options,\r\n Binds: [\"reset\", \"destroy\",\r\n \"addSection\", \"removeSection\", \"removeAllSections\",\r\n \"reloadThumbnails\", \"getUnCheckedElements\",\r\n \"loadFromData\", \"onLoadComplete\"],\r\n\r\n options: {\r\n container: null,\r\n allowDrag: false,\r\n allowHeaderDrag: false,\r\n allowEdit: false,\r\n size: null,\r\n tileListStyle: \"tile-list-item\",\r\n sectionClassPrefix: \"section-\",\r\n targetList: null\r\n },\r\n\r\n sections: [],\r\n dataRequest: null,\r\n data: null,\r\n\r\n initialize: function(options) {\r\n this.setOptions(options);\r\n\r\n if (typeof this.options.container == \"string\")\r\n this.options.container = $(this.options.container);\r\n\r\n if (this.options.container)\r\n this.options.container.empty();\r\n\r\n if (this.options.size == null) {\r\n // Set the size to the default, depending on whether this is the cart or not\r\n if (this.options.tileListStyle.contains(\"-cart\"))\r\n this.options.size = Librarian.tileList.defaultCartSize;\r\n else\r\n this.options.size = Librarian.tileList.defaultSize;\r\n }\r\n },\r\n\r\n reset: function() {\r\n for (var i = 0; i < this.sections.length; i++) {\r\n if (this.sections[i]) {\r\n this.sections[i].destroy();\r\n this.sections[i] = null;\r\n }\r\n }\r\n\r\n this.sections.length = 0;\r\n this.options.container.empty();\r\n },\r\n\r\n destroy: function() {\r\n this.reset();\r\n\r\n this.options.container = null;\r\n },\r\n\r\n loadFromData: function(data, name) {\r\n var type = Librarian.sectionType.myFavorite;\r\n if (data.contenttype == Librarian.contentType.file)\r\n type = Librarian.sectionType.file;\r\n if (data.contenttype == Librarian.contentType.globalFavorite)\r\n type = Librarian.sectionType.globalFavorite;\r\n\r\n this.data = data || {};\r\n this.data.name = name;\r\n\r\n var url;\r\n if (type == Librarian.sectionType.myFavorite)\r\n url = Librarian.path.getMethodUrl(\"getvpsc\") + \"&pid=\" + data.fileid + \"&expand=\" + (Librarian.tileList.expandGroupItemsToSlides ? '1' : '0');\r\n else\r\n url = Librarian.path.getMethodUrl(\"getscs\") + \"&scpid=\" + data.fileid + \"&scptype=\" + type;\r\n url += \"&out=dgrid\";\r\n\r\n this.dataRequest = new Librarian.Request.JSON({\r\n url: url,\r\n onSuccess: this.onLoadComplete,\r\n onFailure: Librarian.Utils.onFailure\r\n });\r\n this.dataRequest.send();\r\n },\r\n\r\n onLoadComplete: function(json) {\r\n if (!json || !json.data || (json.data.length == 0))\r\n return;\r\n\r\n var totalItems = 0;\r\n for (var i = 0; i < json.data.length; i++) {\r\n totalItems += json.data[i].contents.length;\r\n json.data[i].contentname = json.data[i].name;\r\n\r\n if (this.data && (typeof this.data.name == \"string\"))\r\n json.data[i].name = this.data.name;\r\n }\r\n\r\n for (var i = 0; i < json.data.length; i++)\r\n this.addSection(json.data[i].contents, json.data[i].contentname, json.data[i].description, totalItems);\r\n\r\n if (Librarian.pageHeader != null)\r\n Librarian.pageHeader.load(json);\r\n },\r\n\r\n addSection: function(items, name, description, totalItems) {\r\n if (!this.options.container)\r\n return;\r\n\r\n var sectionContainerEl = new Element(\"div\").injectInside(this.options.container),\r\n section = new Librarian.Section({\r\n container: sectionContainerEl,\r\n classPrefix: this.options.sectionClassPrefix,\r\n name: name,\r\n description: description,\r\n allowEdit: this.options.allowEdit,\r\n allowDrag: this.options.allowDrag,\r\n allowHeaderDrag: this.options.allowHeaderDrag,\r\n size: this.options.size,\r\n tileListStyle: this.options.tileListStyle\r\n }, this, this.sections.length, items || [], totalItems, this.options.targetList);\r\n\r\n this.sections.push(section);\r\n },\r\n\r\n removeSection: function(index, removeSlides, updateIndex) {\r\n if ((index < 0) || (index >= this.sections.length))\r\n return;\r\n if ((typeof removeSlides == \"undefined\") || (removeSlides == null))\r\n removeSlides = false;\r\n\r\n var section = this.sections[index];\r\n // Destroy this section and remove it from the list\r\n if (section) {\r\n section.destroy();\r\n section = null;\r\n }\r\n\r\n if (Librarian.userCart)\r\n Librarian.userCart.removeSection(index, removeSlides);\r\n this.sections.remove(index);\r\n\r\n Librarian.Cart.onChange();\r\n\r\n // If we aren't told not to, go through each section and update it's index to the new location\r\n if (updateIndex !== false) {\r\n for (var i = index; i < this.sections.length; i++)\r\n this.sections[i].index = i;\r\n }\r\n },\r\n\r\n removeAllSections: function(removeSlides) {\r\n while (this.sections.length > 0)\r\n this.removeSection(0, removeSlides, false);\r\n },\r\n\r\n selectAll: function(select, selectFile) {\r\n if (!Librarian.userCart)\r\n return;\r\n\r\n for (var i = 0; i < this.sections.length; i++) {\r\n var sectionIndex = null;\r\n\r\n if (select)\r\n sectionIndex = Librarian.userCart.addSection(this.sections[i].options.name, this.sections[i].options.description);\r\n\r\n this.sections[i].selectAll(select, selectFile, sectionIndex);\r\n }\r\n },\r\n\r\n reloadThumbnails: function() {\r\n for (var i = 0; i < this.sections.length; i++)\r\n this.sections[i].reloadThumbnails();\r\n },\r\n\r\n getUnCheckedElements: function() {\r\n var uncheckedElements = [];\r\n\r\n for (var i = 0; i < this.sections.length; i++) {\r\n if (this.sections[i])\r\n uncheckedElements.combine(this.sections[i].getUnCheckedElements());\r\n }\r\n\r\n return uncheckedElements;\r\n },\r\n\r\n reload: function(size) {\r\n if ((typeof size == \"undefined\") || (size == null))\r\n return;\r\n\r\n this.options.size = size;\r\n\r\n for (var i = this.sections.length; i--;)\r\n this.sections[i].reload(size);\r\n },\r\n\r\n getItemStyle: function() {\r\n return this.options.tileListStyle + ((this.options.size.length > 0) ? '-' + this.options.size : '');\r\n },\r\n\r\n onDragStart: function(e) {\r\n this.dragState = Librarian.dragState.dragStart;\r\n\r\n e.returnValue = false;\r\n e.preventDefault();\r\n\r\n return false;\r\n },\r\n\r\n onDragEnd: function(e) {\r\n this.dragState = Librarian.dragState.notDragging;\r\n e.preventDefault();\r\n },\r\n\r\n onDragItem: function(e) {\r\n if (this.dragState != Librarian.dragState.dragStart)\r\n return;\r\n\r\n this.dragState = Librarian.dragState.dragging;\r\n\r\n if (e.rightClick)\r\n return;\r\n\r\n e.stop();\r\n\r\n // `this` refers to the element with the .section-header class\r\n var item = this,\r\n size = item.getSize(),\r\n\r\n // Get the position, size, and scroll position of the element\r\n parentTop = item.getTop(),\r\n parentHeight = item.getHeight(),\r\n\r\n // And attempt to get the positions\r\n // of the what should be the content wrapper of the window.\r\n parentItem = item.getOffsetParent();\r\n\r\n if (parentItem) {\r\n parentTop = parentItem.getTop();\r\n parentHeight = parentItem.getHeight();\r\n }\r\n\r\n var className = \"section-header\";\r\n if (this.className.contains(\"-cart\"))\r\n className = \"section-cart-header\";\r\n\r\n var droppables = $$('.' + className),\r\n clone = item.clone().setStyles({\r\n // Make sure the image is centered on the mouse position.\r\n left: e.page.x - (size.x / 2),\r\n top: e.page.y - (size.y / 2),\r\n width: item.getWidth(),\r\n opacity: 0.7,\r\n position: \"absolute\",\r\n zIndex: 1500\r\n }).inject(document.body),\r\n\r\n drag = clone.makeDraggable({\r\n droppables: droppables,\r\n onEnter: function(draggable, droppable) {\r\n droppable.swapClass(className, className + \"-sel\");\r\n this.underEl = droppable;\r\n },\r\n onLeave: function(draggable, droppable) {\r\n droppable.swapClass(className + \"-sel\", className);\r\n this.underEl = null;\r\n },\r\n onDrop: function(dragging) {\r\n // Only do the select background when in the cart\r\n this.droppables.each(function(el) {\r\n if (el.hasClass(className + \"-sel\"))\r\n el.swapClass(className + \"-sel\", className);\r\n });\r\n dragging.destroy();\r\n\r\n if (this.underEl == null)\r\n return;\r\n\r\n var fromSection = item.getAttribute(\"section\");\r\n var toSection = this.underEl.getAttribute(\"section\");\r\n // If we have a cart and valid section indeces\r\n if (Librarian.userCart && (fromSection != null) && (toSection != null)) {\r\n // Try to swap the sections\r\n if (Librarian.userCart.swapSections(fromSection.toInt(), toSection.toInt())) {\r\n // If it worked and there is a visible cart window, reload it\r\n Librarian.Cart.onChange();\r\n }\r\n }\r\n },\r\n onCancel: function(dragging) {\r\n dragging.destroy();\r\n },\r\n onDrag: function(dragging, e) {\r\n if (!parentItem)\r\n return;\r\n\r\n // Number of pixels to scroll\r\n var scrollAmount = 20,\r\n // Number of pixels different before scrolling starts\r\n scrollThresh = 50,\r\n // Scroll position of the parent item\r\n scrollTop = parentItem.scrollTop;\r\n // Y position of the mouse\r\n var mouseY = e.page.y;\r\n\r\n // Scroll up if the mouse is above the top and the threshhold\r\n if (mouseY < (parentTop + scrollThresh))\r\n scrollTop -= scrollAmount;\r\n // Scroll down if the mouse is below the bottom and the threshhold\r\n else if (mouseY > ((parentTop + parentHeight) - scrollThresh))\r\n scrollTop += scrollAmount;\r\n\r\n // Only scroll if something actually changed\r\n if (scrollTop != parentItem.scrollTop)\r\n parentItem.scrollTo(0, scrollTop);\r\n }\r\n });\r\n\r\n drag.start(e);\r\n }\r\n});","Librarian.Section = new Class({\r\n Implements: Options,\r\n Binds: [\"destroy\", \"render\",\r\n \"onEditClicked\", \"updateSection\",\r\n \"onRemoveClicked\", \"removeSection\", \"removeAllSections\",\r\n \"reloadThumbnails\", \"getUnCheckedElements\"],\r\n\r\n options: {\r\n container: null,\r\n classPrefix: \"section-\",\r\n name: null,\r\n description: null,\r\n allowEdit: false,\r\n allowDrag: false,\r\n allowHeaderDrag: false,\r\n size: null,\r\n tileListStyle: \"tile-list-item\"\r\n },\r\n\r\n tileList: null,\r\n editWindow: null,\r\n removeWindow: null,\r\n list: null,\r\n index: -1,\r\n items: [],\r\n totalItems: 0,\r\n\r\n targetList: null,\r\n\r\n titleEl: null,\r\n descEl: null,\r\n\r\n initialize: function(options, list, index, items, totalItems, targetList) {\r\n if (!list)\r\n return;\r\n\r\n this.setOptions(options);\r\n\r\n this.targetList = targetList;\r\n\r\n if (typeof this.options.container == \"string\")\r\n this.options.container = $(this.options.container);\r\n\r\n if (!this.options.container)\r\n return;\r\n\r\n this.options.container.addClass(this.options.classPrefix + \"container\");\r\n if (!this.options.name)\r\n this.options.name = Librarian.Lang.getString(\"section_defaultname\");\r\n if (!this.options.description)\r\n this.options.description = '';\r\n this.options.description = this.options.description.replaceAll('\\r', '').replaceAll('\\n', \"
\");\r\n\r\n if (this.options.size == null) {\r\n // Set the size to the default, depending on whether this is the cart or not\r\n if (this.options.tileListStyle.contains(\"-cart\"))\r\n this.options.size = Librarian.tileList.defaultCartSize;\r\n else\r\n this.options.size = Librarian.tileList.defaultSize;\r\n }\r\n\r\n this.list = list;\r\n this.index = index;\r\n this.items = items;\r\n this.totalItems = totalItems;\r\n\r\n // Save the index of this section to its container so the drag handler can see it\r\n this.options.container.index = this.index;\r\n\r\n this.render();\r\n },\r\n\r\n destroy: function() {\r\n if (this.tileList) {\r\n this.tileList.destroy();\r\n this.tileList = null;\r\n }\r\n\r\n var elements = [this.options.container, this.titleEl, this.descEl];\r\n for (var i = 0; i < elements.length; i++) {\r\n if (elements[i]) {\r\n $(elements[i]).destroy();\r\n elements[i] = null;\r\n }\r\n }\r\n\r\n var windows = [this.editWindow, this.removeWindow];\r\n for (var i = 0; i < windows.length; i++) {\r\n if (windows[i]) {\r\n windows[i].close();\r\n windows[i] = null;\r\n }\r\n }\r\n },\r\n\r\n render: function() {\r\n var headerEl = new Element(\"div\", { \"class\": this.options.classPrefix + \"header\" + (this.options.allowHeaderDrag ? \" move\" : '') });\r\n this.titleEl = new Element(\"span\", { \"class\": this.options.classPrefix + \"name\" }).injectInside(headerEl);\r\n this.descEl = new Element(\"div\", { \"class\": this.options.classPrefix + \"description\" });\r\n\r\n // Don't add the buttons if we're not allowed to edit\r\n if (this.options.allowEdit) {\r\n var buttonContEl = new Element(\"div\", { \"class\": this.options.classPrefix + \"header-buttons\" }).injectInside(headerEl);\r\n var editEl = new Element(\"span\", { \"class\": \"ico-edit-section\" }).injectInside(buttonContEl);\r\n var removeEl = new Element(\"span\", { \"class\": \"ico-remove-section\" }).injectInside(buttonContEl);\r\n\r\n editEl.addOnClick(this.onEditClicked);\r\n removeEl.addOnClick(this.onRemoveClicked);\r\n }\r\n\r\n var bodyEl = new Element(\"div\", { \"class\": this.options.classPrefix + \"body\" });\r\n\r\n Librarian.Utils.setElementValue(this.titleEl, this.options.name);\r\n Librarian.Utils.setElementValue(this.descEl, this.options.description);\r\n\r\n headerEl.appendChild(this.descEl);\r\n\r\n if (this.options.allowHeaderDrag) {\r\n headerEl.setAttribute(\"section\", this.index);\r\n headerEl.addEvent(\"mousedown\", this.list.onDragStart)\r\n .addEvent(\"touchstart\", this.list.onDragStart)\r\n .addEvent(\"mouseup\", this.list.onDragEnd)\r\n .addEvent(\"touchend\", this.list.onDragEnd)\r\n .addEvent(\"mouseout\", this.list.onDragItem)\r\n .addEvent(\"touchmove\", this.list.onDragItem);\r\n }\r\n\r\n this.options.container.appendChild(headerEl);\r\n this.options.container.appendChild(bodyEl);\r\n\r\n this.tileList = new Librarian.TileList({\r\n id: \"sectionListWrapper\" + (new Date().getTime()),\r\n container: bodyEl,\r\n itemStyle: this.options.tileListStyle,\r\n isSection: true,\r\n size: this.options.size,\r\n allowDrag: this.options.allowDrag\r\n });\r\n this.tileList.options.targetList = this.targetList;\r\n this.tileList.loadFromArray(this.items || [], null, this.totalItems);\r\n },\r\n\r\n onEditClicked: function() {\r\n // If the window is open, but not focused, focus it\r\n if (this.editWindow && !this.editWindow.windowEl.hasClass(\"isFocused\")) {\r\n MUI.focusWindow(this.editWindow.windowEl);\r\n return;\r\n }\r\n\r\n // Don't continue if we're not allowed to edit\r\n if (!this.options.allowEdit)\r\n return;\r\n\r\n this.editWindow = new Librarian.EditSectionWindow({\r\n onCloseComplete: function() {\r\n this.editWindow = null;\r\n }.bind(this)\r\n }, this);\r\n },\r\n\r\n updateSection: function(name, description) {\r\n // Don't continue if we're not allowed to edit\r\n if (!this.options.allowEdit)\r\n return;\r\n\r\n this.options.name = name || Librarian.Lang.getString(\"section_defaultname\");\r\n this.options.description = (description || '').replaceAll('\\r', '').replaceAll('\\n', \"
\");\r\n\r\n Librarian.Utils.setElementValue(this.titleEl, this.options.name);\r\n Librarian.Utils.setElementValue(this.descEl, this.options.description);\r\n\r\n // If the remove window is open, update it's title to reflect the new name\r\n if (this.removeWindow)\r\n this.removeWindow.updateName(this.options.name);\r\n\r\n if (Librarian.userCart)\r\n Librarian.userCart.updateSection(this.index, this.options.name, this.options.description);\r\n },\r\n\r\n onRemoveClicked: function() {\r\n // If the window is open, but not focused, focus it\r\n if (this.removeWindow && !this.removeWindow.windowEl.hasClass(\"isFocused\")) {\r\n MUI.focusWindow(this.removeWindow.windowEl);\r\n return;\r\n }\r\n\r\n // Don't continue if we're not allowed to edit\r\n if (!this.options.allowEdit)\r\n return;\r\n\r\n this.removeWindow = new Librarian.RemoveSectionWindow({\r\n name: this.options.name,\r\n onCloseComplete: function() {\r\n this.removeWindow = null;\r\n }.bind(this)\r\n }, this);\r\n },\r\n\r\n removeSection: function(removeSlides) {\r\n // Don't continue if we're not allowed to edit\r\n if (!this.options.allowEdit || !this.list)\r\n return;\r\n\r\n this.list.removeSection(this.index, removeSlides);\r\n },\r\n\r\n removeAllSections: function() {\r\n // Don't continue if we're not allowed to edit\r\n if (!this.options.allowEdit || !this.list)\r\n return;\r\n\r\n this.list.removeAllSections();\r\n },\r\n\r\n selectAll: function(select, selectFile, sectionIndex) {\r\n if (!this.tileList)\r\n return;\r\n\r\n this.tileList.selectAll(select, selectFile, sectionIndex);\r\n },\r\n\r\n reloadThumbnails: function() {\r\n if (!this.tileList)\r\n return;\r\n\r\n this.tileList.reloadThumbnails();\r\n },\r\n\r\n getUnCheckedElements: function() {\r\n if (!this.tileList)\r\n return [];\r\n\r\n return this.tileList.getUnCheckedElements();\r\n },\r\n\r\n reload: function (size) {\r\n if (!this.tileList)\r\n return;\r\n if ((typeof size == \"undefined\") || (size == null))\r\n return;\r\n\r\n this.options.size = size;\r\n this.tileList.reload(size);\r\n }\r\n});","Librarian.EditSectionWindow = new Class({\r\n Extends: Librarian.Window,\r\n Binds: [\"onSaveClicked\"],\r\n\r\n options: {\r\n id: \"editSectionWindow\",\r\n minimizable: false,\r\n height: 300,\r\n width: 350\r\n },\r\n\r\n section: null,\r\n\r\n initialize: function(options, section) {\r\n if (!section)\r\n return;\r\n\r\n this.setOptions(options);\r\n this.section = section;\r\n\r\n // Set the title on init so that we can use the localization\r\n this.options.title = Librarian.Lang.getString(\"section_edit_title\");\r\n\r\n this.onSubmit = options.onSubmit;\r\n this.options.contentURL = Librarian.path.getLayoutsPath() + \"core/sections/editsection.html\";\r\n\r\n this.parent(this.options);\r\n },\r\n\r\n onWindowLoaded: function() {\r\n if (!this.section)\r\n return;\r\n\r\n this.parent();\r\n this.setupElements();\r\n\r\n Librarian.Utils.setElementValue(this.getElement(\"sectionName\"), this.section.options.name);\r\n Librarian.Utils.setElementValue(this.getElement(\"sectionDesc\"), this.section.options.description.replaceAll(\"
\", '\\n'));\r\n\r\n itemEl = this.getElement(\"saveButton\");\r\n if (itemEl)\r\n itemEl.addOnClick(this.onSaveClicked, this);\r\n\r\n itemEl = this.getElement(\"cancelButton\");\r\n if (itemEl)\r\n itemEl.addOnClick(this.close, this);\r\n },\r\n\r\n onSaveClicked: function() {\r\n if (!this.section)\r\n return;\r\n\r\n var name = (Librarian.Utils.getElementValue(this.getElement(\"sectionName\")) || '').trim(),\r\n description = (Librarian.Utils.getElementValue(this.getElement(\"sectionDesc\")) || '').trim();\r\n\r\n this.section.updateSection(name, description);\r\n this.close();\r\n }\r\n});","Librarian.RemoveSectionWindow = new Class({\r\n Extends: Librarian.Window,\r\n Binds: [\"onRemoveSectionClicked\", \"onRemoveSlidesClicked\", \"onRemoveAllClicked\"],\r\n\r\n options: {\r\n id: \"deleteSectionWindow\",\r\n minimizable: false,\r\n width: 300,\r\n name: ''\r\n },\r\n\r\n section: null,\r\n\r\n initialize: function(options, section) {\r\n if (!section)\r\n return;\r\n\r\n this.setOptions(options);\r\n this.section = section;\r\n\r\n // Set the title on init so that we can use the localization\r\n this.options.title = Librarian.Lang.getArgString(\"section_remove_title\", [this.options.name]);\r\n\r\n this.onSubmit = options.onSubmit;\r\n this.options.contentURL = Librarian.path.getLayoutsPath() + \"core/sections/removesection.html\";\r\n\r\n this.parent(this.options);\r\n },\r\n\r\n onWindowLoaded: function() {\r\n if (!this.section)\r\n return;\r\n\r\n this.parent();\r\n this.setupElements();\r\n\r\n var itemEl = this.getElement(\"removeSectionButton\");\r\n if (itemEl)\r\n itemEl.addOnClick(this.onRemoveSectionClicked, this);\r\n\r\n itemEl = this.getElement(\"removeSlidesButton\");\r\n if (itemEl)\r\n itemEl.addOnClick(this.onRemoveSlidesClicked, this);\r\n\r\n itemEl = this.getElement(\"removeAllButton\");\r\n if (itemEl)\r\n itemEl.addOnClick(this.onRemoveAllClicked, this);\r\n\r\n itemEl = this.getElement(\"cancelButton\");\r\n if (itemEl)\r\n itemEl.addOnClick(this.close, this);\r\n },\r\n\r\n onRemoveSectionClicked: function() {\r\n if (!this.section)\r\n return;\r\n\r\n this.section.removeSection();\r\n },\r\n\r\n onRemoveSlidesClicked: function() {\r\n if (!this.section)\r\n return;\r\n\r\n this.section.removeSection(true);\r\n },\r\n\r\n onRemoveAllClicked: function() {\r\n if (!this.section)\r\n return;\r\n\r\n this.section.removeAllSections();\r\n },\r\n\r\n updateName: function(name) {\r\n this.options.name = name;\r\n this.options.title = Librarian.Lang.getArgString(\"section_remove_title\", [this.options.name]);\r\n\r\n var title = MUI.getFittedTitle(this.options.title, this.options.width);\r\n this.titleEl.set(\"text\", title);\r\n this.titleEl.set(\"title\", this.options.title);\r\n\r\n var dockTabEl = $(this.options.id + '_dockTab');\r\n if (dockTabEl)\r\n dockTabEl.set('title', this.options.title);\r\n\r\n var dockTabTextEl = $(this.options.id + '_dockTabText');\r\n if (dockTabTextEl)\r\n dockTabTextEl.set('html', this.options.title.substring(0, 19) + (this.options.title.length > 19 ? '...' : ''));\r\n }\r\n});"]}