Example #1
0
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')
  }
}
Example #2
0
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')
    }
  }
}
Example #3
0
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 })
  }
}
Example #4
0
 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(),
   })
 })
Example #5
0
 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),
   })
 }
Example #6
0
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')
  }
}
Example #7
0
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)
  }
}
Example #8
0
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
    })
  }
Example #10
0
export const block = async user => {
  let {
    data: { mssg },
  } = await post('/api/block', { user })
  Notify({ value: mssg })
}