Current user: Difference between revisions

From NSB App Studio
Jump to navigation Jump to search
Sarah (talk | contribs)
Instructions for creating and working with the current user
 
No edit summary
 
Line 9: Line 9:
'''$volt.use.get'''(''callback'')
'''$volt.use.get'''(''callback'')


* ''callback'' - function(error, data), required. The function in your app to call when the request to Volt is complete (or fails).
* ''callback'' - function(error, data), required. The function in your app to call when the request to VoltServer is complete (or fails).


   <syntaxhighlight lang="JavaScript">
   <syntaxhighlight lang="JavaScript">
Line 49: Line 49:
   </syntaxhighlight>
   </syntaxhighlight>


What gets returned? Here is what is in the initial release of Volt:
What gets returned?


   <syntaxhighlight lang="json">
   <syntaxhighlight lang="json">
Line 70: Line 70:


* ''data'' - object, required. An object with the user details to update.
* ''data'' - object, required. An object with the user details to update.
* ''callback'' - function(error, data), required. The function in your app to call when the request to Volt is complete (or fails).
* ''callback'' - function(error, data), required. The function in your app to call when the request to VoltServer is complete (or fails).


The data object should be of the following form:
The data object should be of the following form:
Line 129: Line 129:
'''$volt.user.delete'''(''callback'')
'''$volt.user.delete'''(''callback'')


* ''callback'' - function(error, data), required. The function in your app to call when the request to Volt is complete (or fails).
* ''callback'' - function(error, data), required. The function in your app to call when the request to VoltServer is complete (or fails).


   <syntaxhighlight lang="JavaScript">
   <syntaxhighlight lang="JavaScript">

Latest revision as of 15:22, 25 February 2021

Here are some functions for managing the users of your app. You'll need to initialize your app, after which you can get the information for the logged in user, modify it or delete it.

Get User information

You can get information on the currently logged on user with the $volt.user.get() function.

The syntax of the function is:

$volt.use.get(callback)

  • callback - function(error, data), required. The function in your app to call when the request to VoltServer is complete (or fails).
  var user;

  butGetUser.onclick = function() {
    $volt.user.get(getUserCallback);
  }

  function getUserCallback(error, data) {
    if (error) {
      if (!data) {
        data = { message: 'Network Error' };
      }
      alert(data.message);
      user = null;
    } else {
      user = data;
    }
  }
  Dim user

  Function butGetUser_onclick()
    $volt.user.get(getUserCallback)
  End Function

  Function getUserCallback(error, data)
    If error Then
      If (!data) Then data = { message: "Network Error" }
      alert(data.message)
      user = null
    Else
      user = data
    End If
  End Function

What gets returned?

  {
    "id": "7PQipR",
    "email": "support@nsbasic.com",
    "confirmed": true,
    "first_name": "John",
    "last_name": "Smith"
  }

Modify User information

You can change information for the currently logged on user with the $volt.user.update() function.

The syntax of the function is:

$volt.user.get(data, callback)

  • data - object, required. An object with the user details to update.
  • callback - function(error, data), required. The function in your app to call when the request to VoltServer is complete (or fails).

The data object should be of the following form:

  {
    "email": "new@email.com",
    "password": {
      "old": "myOldPassword",
      "new": "myNewPassword",
      "confirmation": "myNewPassword"
    },
    "first_name": "Alan",
    "last_name": "Turing"
  }

You can pass email, password, first_name, last_name or any combination thereof. Here's an example of changing the logged in user's email:

  butUpdateUser.onclick = function() {
    $volt.user.update({ email: inpNewEmail.value }, updateUserCallback);
  }

  function updateUserCallback(error, data) {
    if (error) {
      if (!data) {
        data = { message: 'Network Error' };
      }
      alert(data.message);
    } else {
      alert('User updated.');
    }
  }
  Function butUpdateUser_onclick()
    $volt.user.update({ email: inpNewEmail.value }, updateUserCallback)
  End Function

  Function getUserCallback(error, data)
    If error Then
      If (!data) Then data = { message: "Network Error" }
      alert(data.message)
    Else
      alert("User updated.")
    End If
  End Function

Delete a User

You can provide your users with a way to close/delete their accounts using the $volt.user.delete() function.

The syntax of the function is:

$volt.user.delete(callback)

  • callback - function(error, data), required. The function in your app to call when the request to VoltServer is complete (or fails).
  function deleteUser() {
    $volt.user.delete(deleteUserCallback);
  }

  function deleteUserCallback(error, data) {
    if (error) {
      if (!data) {
        data = { message: 'Network Error' };
      }
      alert(data.message);
    } else {
      alert('User deleted.');
    }
  }
  Function deleteUser()
    $volt.user.delete(deleteUserCallback)
  End Function

  Function deleteUserCallback(error, data)
    If error Then
      If (!data) Then data = { message: "Network Error" }
      MsgBox data.message
    Else
      MsgBox "User Deleted"
    End If
  End Function

Reference

  • JavaScript API
 * https://docs.voltcloud.io/client/$volt.user.html#.get
 * https://docs.voltcloud.io/client/$volt.user.html#.update
 * https://docs.voltcloud.io/client/$volt.user.html#.delete
  • REST API
 * https://docs.voltcloud.io/api/#users-current-user-get
 * https://docs.voltcloud.io/api/#users-current-user-put
 * https://docs.voltcloud.io/api/#users-current-user-delete