export const upload_avatar = async options => { let { file: userFile, of, group } = options, form = new FormData(), file = await imageCompressor(userFile), action = new Action('.c_a_add') if (file.size > 6000000) { Notify({ value: 'Image should be less than 4MB!!' }) } else { action.start('Changing avatar..') form.append('avatar', file) form.append('of', of) form.append('group', group) let { data: { success, mssg }, } = await post('/api/upload-avatar', form) Notify({ value: mssg, done: () => (success ? location.reload() : null), }) action.end('Change avatar') } }
export const changePassword = async (old, new_, new_a) => { let action = new Action('.c_p_btn') if (!old || !new_ || !new_a) { Notify({ value: 'Some values are missing!!' }) } else if (new_ != new_a) { Notify({ value: "New passwords don't match" }) } else { action.start('Changing password..') wait() let { data: { mssg, success }, } = await post('/user/change-password', { old, new_, new_a }) if (success) { Notify({ value: mssg, done: () => location.reload(), }) } else { Notify({ value: ObjectMssg(mssg), }) action.end('Change password') } } }
export const unblock = async options => { let { block_id, username, dispatch } = options let { data: { success, mssg }, } = await post('/api/unblock-user', { block_id }) if (success) { dispatch(unblockUser(block_id)) Notify({ value: `Unblocked ${username}!!` }) } else { Notify({ value: mssg }) } }
new d('.q_l_remove').on('click', async e => { e.preventDefault() await post('/api/remove-quick-login', { id }) Notify({ value: `Removed ${username} from quick login!!`, done: () => location.reload(), }) })
let changeAvatar = async e => { e.preventDefault() let { data: { success, mssg }, } = await post('/api/change-avatar', { avatar, of, group }) Notify({ value: mssg, done: () => (success ? location.reload() : null), }) }
export const adminSubmit = async options => { let { password, search } = options, toURL = qs.parse(search), action = new Action('.al_submit') if (!password) { Notify({ value: 'Password field is missing!!' }) } else { action.start('Please wait..') let { data: { mssg, success }, } = await post('/api/check-is-admin', { password }) let to = toURL.to ? toURL.to : '/is-admin' Notify({ value: mssg, done: () => (success ? (location.href = to) : null), }) action.end('Continue as admin') } }
const quickLoginSubmit = username => { let password = new d('#q_l_password').val() if (!password) { Notify({ value: 'Password is missing!!' }) } else { let loginOpt = { data: { username, password, }, when: 'login', btn: '.q_l_submit', url: '/user/login', redirect: '/', defBtnValue: 'Login To Continue', } commonLogin(loginOpt) } }
export const deactivateAccount = async (password, hidePrompt) => { let action = new Action('.prompt-done') action.start('Deactivating..') wait() let { data: { mssg, success }, } = await post('/user/deactivate-account', { password }) action.end('Deactivate') Notify({ value: mssg, done: () => { success ? (location.href = '/login') : hidePrompt() }, }) }
deactivate = async e => { e.preventDefault() let { password } = this.state, btn = $('.prompt-done'), o = $('.overlay-2') btn.addClass('a_disabled').text('Deactivating..') o.show() let { data, data: { mssg, success } } = await post('/user/deactivate-account', { password }) console.log(data) btn.removeClass('a_disabled').text('Deactivated') o.hide() Notify({ value: mssg, done: () => success ? location.href = '/login': null }) }
export const block = async user => { let { data: { mssg }, } = await post('/api/block', { user }) Notify({ value: mssg }) }