Updates and more features

Former-commit-id: 9f1f09311813203910d5b323ba80712553ee2741 [formerly 0be00be1de305d786affc6bf0886aed9b20fbc51] [formerly 04597463117e94830b24b87faaaccf3d35284427 [formerly 3f2dc3f1c5]]
Former-commit-id: 8d26cc1d96faed73c7974ea7e5e78bf268af3ad9 [formerly a083ac8f68c90a636843c3565bd349657c0ec383]
Former-commit-id: ef10f3b3c388d65ceac40785b45dbac190a6cc99
This commit is contained in:
Henrique Dias
2017-06-30 16:04:01 +01:00
parent 3535f34c4f
commit 713e89eb68
26 changed files with 217 additions and 259 deletions

View File

@@ -1,24 +1,3 @@
'use strict'
var tempID = '_fm_internal_temporary_id'
var templates = {}
var selectedItems = []
var overlay
var clickOverlay
// Sends a costum event to itself
Document.prototype.sendCostumEvent = function (text) {
this.dispatchEvent(new window.CustomEvent(text))
}
/* * * * * * * * * * * * * * * *
* *
* BUTTONS *
* *
* * * * * * * * * * * * * * * */
var buttons = {
previousState: {}
}
@@ -70,77 +49,31 @@ buttons.setDone = function (name, success = true) {
return false
}
/* * * * * * * * * * * * * * * *
* *
* EVENTS *
* *
* * * * * * * * * * * * * * * */
function notImplemented (event) {
event.preventDefault()
clickOverlay.click()
let clone = document.importNode(templates.message.content, true)
clone.querySelector('h3').innerHTML = 'Not implemented'
clone.querySelector('p').innerHTML = "Sorry, but this feature wasn't implemented yet."
document.querySelector('body').appendChild(clone)
document.querySelector('.overlay').classList.add('active')
document.querySelector('.prompt').classList.add('active')
}
// Prevent Default event
var preventDefault = function (event) {
event.preventDefault()
}
function logoutEvent (event) {
let request = new window.XMLHttpRequest()
request.open('GET', window.location.pathname, true, 'data.username', 'password')
request.send()
request.onreadystatechange = function () {
if (request.readyState === 4) {
window.location = '/'
}
listing.addDoubleTapEvent = function () {
let items = document.getElementsByClassName('item'),
touches = {
id: '',
count: 0
}
Array.from(items).forEach(file => {
file.addEventListener('touchstart', event => {
if (touches.id != file.id) {
touches.id = file.id
touches.count = 1
setTimeout(() => {
touches.count = 0
}, 300)
return
}
touches.count++
if (touches.count > 1) {
window.location = file.dataset.url
}
})
})
}
/* * * * * * * * * * * * * * * *
* *
* BOOTSTRAP *
* *
* * * * * * * * * * * * * * * */
document.addEventListener('DOMContentLoaded', function (event) {
let dropdownButtons = document.querySelectorAll('.action[data-dropdown]')
Array.from(dropdownButtons).forEach(button => {
button.addEventListener('click', event => {
button.querySelector('ul').classList.toggle('active')
clickOverlay.classList.add('active')
clickOverlay.addEventListener('click', event => {
button.querySelector('ul').classList.remove('active')
clickOverlay.classList.remove('active')
})
})
})
let mainActions = document.getElementById('main-actions')
document.getElementById('more').addEventListener('click', event => {
event.preventDefault()
event.stopPropagation()
clickOverlay.classList.add('active')
mainActions.classList.add('active')
clickOverlay.addEventListener('click', event => {
mainActions.classList.remove('active')
clickOverlay.classList.remove('active')
})
})
return false
})