123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- 'use strict'
- import $ from 'jquery'
- import _ from 'lodash'
- import { setInputSelection } from '../helpers/form'
- import { makeSafePath } from '../helpers/pages'
- // -> Move Existing Document
- module.exports = (currentBasePath, alerts) => {
- if (currentBasePath !== '') {
- $('.btn-move-prompt').removeClass('is-hidden')
- }
- let moveInitialDocument = _.lastIndexOf(currentBasePath, '/') + 1
- $('.btn-move-prompt').on('click', (ev) => {
- $('#txt-move-prompt').val(currentBasePath)
- $('#modal-move-prompt').toggleClass('is-active')
- setInputSelection($('#txt-move-prompt').get(0), moveInitialDocument, currentBasePath.length)
- $('#txt-move-prompt').removeClass('is-danger').next().addClass('is-hidden')
- })
- $('#txt-move-prompt').on('keypress', (ev) => {
- if (ev.which === 13) {
- $('.btn-move-go').trigger('click')
- }
- })
- $('.btn-move-go').on('click', (ev) => {
- let newDocPath = makeSafePath($('#txt-move-prompt').val())
- if (_.isEmpty(newDocPath) || newDocPath === currentBasePath || newDocPath === 'home') {
- $('#txt-move-prompt').addClass('is-danger').next().removeClass('is-hidden')
- } else {
- $('#txt-move-prompt').parent().addClass('is-loading')
- $.ajax(window.location.href, {
- data: {
- move: newDocPath
- },
- dataType: 'json',
- method: 'PUT'
- }).then((rData, rStatus, rXHR) => {
- if (rData.ok) {
- window.location.assign('/' + newDocPath)
- } else {
- alerts.pushError('Something went wrong', rData.error)
- }
- }, (rXHR, rStatus, err) => {
- alerts.pushError('Something went wrong', 'Save operation failed.')
- })
- }
- })
- }
|