reader.onloadend = function () { try { var answers = JSON.parse(this.result) } catch (e) { failed = true message = 'error parsing file!' } var repository = document.querySelector('#repository').value var repository = (repository !== '') ? 'https://github.com/' + gh(repository).repository : '' var payload = { repository: repository, name: document.querySelector('#name').value, contact: document.querySelector('#contact').value, algorithm: document.querySelector('#algorithm').value, answers: answers } Array('name', 'contact', 'algorithm').forEach(function (field) { console.log(payload[field]) if (!payload[field] || payload[field] == '') { failed = true message = 'forget a form?' } }) if (!failed) { ax.submit(payload)(dx) } else { dx({ type: 'UPLOAD_ERROR', message: message }) } }
function oninput (event) { dx({ type: 'FILTER', all: Object.keys(state.model.entries), value: event.target.value }) }
function ondrop (event, data) { event.stopPropagation() event.preventDefault() dx({ type: 'UPLOAD_STARTED' }) var failed = false var message = '' try { var reader = new FileReader() reader.onloadend = function () { try { var answers = JSON.parse(this.result) } catch (e) { failed = true message = 'error parsing file!' } var repository = document.querySelector('#repository').value var repository = (repository !== '') ? 'https://github.com/' + gh(repository).repository : '' var payload = { repository: repository, name: document.querySelector('#name').value, contact: document.querySelector('#contact').value, algorithm: document.querySelector('#algorithm').value, answers: answers } Array('name', 'contact', 'algorithm').forEach(function (field) { console.log(payload[field]) if (!payload[field] || payload[field] == '') { failed = true message = 'forget a form?' } }) if (!failed) { ax.submit(payload)(dx) } else { dx({ type: 'UPLOAD_ERROR', message: message }) } } reader.readAsText(event.dataTransfer.files[0]) } catch (err) { dx({ type: 'UPLOAD_ERROR', message: 'error reading file!' }) } document.querySelector('#dropzone').style.border = 'dotted 4px rgb(86, 171, 114)' }
function onclick () { if (state.detail) dx({type: 'HIDE_DETAIL', _id: state._id}) else dx({type: 'SHOW_DETAIL', _id: state._id}) }
timeout = setTimeout(function () { dx({type: 'REMOVE_INFO', _id: state._id}) }, 50)
function onmouseover (e) { clearTimeout(timeout) var target = e.target || e.srcElement var info = target['data-info'] dx({type: 'SET_INFO', _id: state._id, info: info}) }