Module: AccessToken

AccessToken

AccessToken Factory
Author:
  • Marco Lehmann <marco.lehmann (at) kiwigrid.com>
Source:

Classes

ketaAccessToken
ketaAccessTokenConstants

Methods

<inner> decode(token) → {Object}

Decode access token.
Parameters:
Name Type Description
token string access token to decode (jwt or legacy)
Source:
Returns:
Object access token properties
Example
angular.module('exampleApp', ['keta.services.AccessToken'])
    .controller('ExampleController', function(ketaAccessToken) {
        var accessTokenProps = ketaAccessToken.decode(AccessToken.get());
    });

<inner> encode(props) → {string}

Encode access token properties.
Parameters:
Name Type Description
props Object access token properties to encode
Source:
Returns:
string access token
Example
angular.module('exampleApp', ['keta.services.AccessToken'])
    .controller('ExampleController', function(ketaAccessToken) {
        var accessTokenProps = ketaAccessToken.decode(ketaAccessToken.get());
        accessTokenProps.loaded = true;
        var accessToken = ketaAccessToken.encode(accessTokenProps);
    });

<inner> get(decoded) → {string}

Get access token.
Parameters:
Name Type Description
decoded boolean Return in decoded or raw format.
Source:
Returns:
string access token
Example
angular.module('exampleApp', ['keta.services.AccessToken'])
    .controller('ExampleController', function(ketaAccessToken) {
        var accessToken = ketaAccessToken.get();
    });

<inner> getBackUrl() → {string}

Returns back URL for an impersonated session.
Source:
Returns:
string back URL

<inner> getChannel() → {string}

Get channel from token.
Source:
Returns:
string channel

<inner> getUserId() → {string}

Get user id from token.
Source:
Returns:
string user id

<inner> hasPermission(permission) → {boolean}

Checks if current user has a certain permission.
Parameters:
Name Type Description
permission string permission to check
Source:
Returns:
boolean result

<inner> isType(type) → {boolean}

Checks if session is of a certain type.
Parameters:
Name Type Description
type string session type (use ketaAccessTokenConstants.SESSION_TYPE)
Source:
Returns:
boolean result

<inner> refresh() → {promise}

Refresh access token by requesting backend.
Source:
Returns:
promise Promise which is resolved when query is returned
Example
angular.module('exampleApp', [])
    .controller('ExampleController', function(ketaAccessToken) {
        ketaAccessToken.refresh().then(
            function(response) {
                if (angular.isDefined(response.data.accessToken)) {
                    ketaAccessToken.set(response.data.accessToken);
                }
            },
            function(message) {
                console.error(message);
            }
        );
    });

<inner> set(token) → {void}

Set access token.
Parameters:
Name Type Description
token string new access token
Source:
Returns:
void returns nothing
Example
angular.module('exampleApp', ['keta.services.AccessToken'])
    .controller('ExampleController', function(ketaAccessToken) {
        ketaAccessToken.set('new-token');
    });