Improvements
Former-commit-id: 75aaab2410d4e93a892f1c68d253ecf2c3def92b [formerly d9f37f49e3b705eb7a632b0f6e44cbabdfd296ac] [formerly 5ac5b5223ad348b589861a50f8ee41228a18d13f [formerly 7809b778bb2d65a3faff5dd5f928c1786f227def]] Former-commit-id: 30bac294d7bf5e875d4fb365321dc1fde16a50df [formerly df3d70ac1c0afcc4c7aed0a8e4ce2d2aa815ee0c] Former-commit-id: f82ccdf36a7d088cbd2a4a3ada53876e823a64e2
This commit is contained in:
@@ -1,84 +1,5 @@
|
||||
'use strict'
|
||||
|
||||
var listing = {
|
||||
selectMultiple: false,
|
||||
reload: function (callback) {
|
||||
let request = new window.XMLHttpRequest()
|
||||
|
||||
request.open('GET', window.location)
|
||||
request.setRequestHeader('Minimal', 'true')
|
||||
request.send()
|
||||
request.onreadystatechange = function () {
|
||||
if (request.readyState === 4) {
|
||||
if (request.status === 200) {
|
||||
document.querySelector('body main').innerHTML = request.responseText
|
||||
listing.addDoubleTapEvent()
|
||||
|
||||
if (typeof callback === 'function') {
|
||||
callback()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
rename: function (event) {
|
||||
if (!selectedItems.length || selectedItems.length > 1) {
|
||||
return false
|
||||
}
|
||||
|
||||
let item = document.getElementById(selectedItems[0])
|
||||
|
||||
if (item.classList.contains('disabled')) {
|
||||
return false
|
||||
}
|
||||
|
||||
let link = item.dataset.url
|
||||
let field = item.querySelector('.name')
|
||||
let name = field.innerHTML
|
||||
|
||||
let submit = (event) => {
|
||||
event.preventDefault()
|
||||
|
||||
let newName = event.currentTarget.querySelector('input').value
|
||||
let newLink = removeLastDirectoryPartOf(link) + '/' + newName
|
||||
|
||||
closePrompt(event)
|
||||
buttons.setLoading('rename')
|
||||
|
||||
webdav.move(link, newLink).then(() => {
|
||||
listing.reload(() => {
|
||||
newName = btoa(newName)
|
||||
selectedItems = [newName]
|
||||
document.getElementById(newName).setAttribute('aria-selected', true)
|
||||
listing.handleSelectionChange()
|
||||
})
|
||||
|
||||
buttons.setDone('rename')
|
||||
}).catch(error => {
|
||||
field.innerHTML = name
|
||||
buttons.setDone('rename', false)
|
||||
console.log(error)
|
||||
})
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
let clone = document.importNode(templates.question.content, true)
|
||||
clone.querySelector('h3').innerHTML = 'Rename'
|
||||
clone.querySelector('input').value = name
|
||||
clone.querySelector('.ok').innerHTML = 'Rename'
|
||||
clone.querySelector('form').addEventListener('submit', submit)
|
||||
|
||||
document.querySelector('body').appendChild(clone)
|
||||
document.querySelector('.overlay').classList.add('active')
|
||||
document.querySelector('.prompt').classList.add('active')
|
||||
|
||||
return false
|
||||
},
|
||||
handleFiles: function (files, base) {
|
||||
}
|
||||
}
|
||||
|
||||
listing.redefineDownloadURLs = function () {
|
||||
let files = ''
|
||||
|
||||
@@ -321,12 +242,6 @@ document.addEventListener('DOMContentLoaded', event => {
|
||||
listing.updateColumns()
|
||||
listing.addDoubleTapEvent()
|
||||
|
||||
buttons.rename = document.getElementById('rename')
|
||||
buttons.upload = document.getElementById('upload')
|
||||
buttons.new = document.getElementById('new')
|
||||
buttons.download = document.getElementById('download')
|
||||
buttons.move = document.getElementById('move')
|
||||
|
||||
document.getElementById('multiple-selection-activate').addEventListener('click', event => {
|
||||
listing.selectMultiple = true
|
||||
clickOverlay.click()
|
||||
|
||||
Reference in New Issue
Block a user