Logo

Docs

  • HOME

Source: User/UserList.js

/**
 *
 * Copyright (C) 2021 Akorbi Digital RMP
 *
 * This file is part of RunMyProcess SDK-JS.
 *
 * RunMyProcess SDK-JS is free software: you can redistribute it and/or modify
 * it under the terms of the Apache License Version 2.0 (the "License");
 *
 *   You may not use this file except in compliance with the License.
 *   You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *   Unless required by applicable law or agreed to in writing, software
 *   distributed under the License is distributed on an "AS IS" BASIS,
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *   See the License for the specific language governing permissions and
 *   limitations under the License.
 */
 /**
	A List of the users
  	@constructor
	@property {Array} users - Array of users.
	@see Resource
	@example Load customers
		var userList = new UserList();
		userList.load({
			onSuccess:function(){
				alert('List Loaded! '+userList.users.length+' users on list');
			}
		});
 */
function UserList(){
	this.users = [];
};
/**
	Inherits Resource
	@borrows Resource.js
*/
UserList.prototype = new  Resource();
/**
	Overrides Resource's loadPreset method.
	@method
	@see Resource#loadPreset
*/
UserList.prototype.loadPreset = function () {
	/**
		Overrides Resource's generateUrl method to return the request url
		@method
		@see Resource#generateUrl
	*/
	 if(!this.version)this.version = 'current';
	 //this.defaultFilters =[];//Remove default filters generated by filters in the selfUrl
	this.generateUrl=function () {
		return this.selfUrl || this.reconstructUrl(context.link.user);//If selUrl is not set get the url from context
	};
};
/**
	Overrides Resource's loadSet method to set local variables after request.
	@method
	@param {json} rObject - JSON representation of the loaded data.
	@see Resource#loadSet
*/
UserList.prototype.loadSet = function (rObject) {
	var father = this;
	father.users = [];
	var ent=this.getArray(rObject, "entry");
	for (var i = 0; i < ent.length; i++) {
		var u = new User();//Create a new instance of User
		u.id = ent[i].id;
		u.categories = u.getArray(ent[i], "category");
		u.selfUrl = ent[i].content.src;
		u.author = ent[i].author;
		u.title = ent[i].title;
		u.updated = new Date(ent[i].updated);
		u.setLinks = u.getArray(ent[i], "link");
		u.rights = ent[i].rights;
		u.title = ent[i].title;
		u.name = ent[i].author.name;
		u.email = ent[i].author.email;
		u.published = new Date(ent[i].published);
		var cat = u.categories;
		for (var j = 0; j < cat.length; j++) {
			switch (cat[j].term) {
				case 'profile':
					u.profile = cat[j].label;
					break;
				case 'language':
					u.language = cat[j].label;
					break;
				case 'status':
					u.status = cat[j].label;
					break;
				case 'client_language':
					u.clientLanguage = cat[j].label;
					break;
				case 'billing_status':
					u.billingStatus = cat[j].label;
					break;
				case 'receive_alert':
					u.receive_alert = cat[j].label;
					break;
			}
		}
		father.users.push(u);
	}
};



Index

Classes

  • AccessLog
  • AllLaneUserList
  • AppInstanceReport
  • Context
  • Customer
  • CustomerDomainList
  • CustomerList
  • CustomerSubscriptionList
  • CustomerTrafficList
  • CustomList
  • CustomListList
  • Domain
  • Host
  • HostList
  • HostMode
  • I18n
  • I18nDico
  • Lane
  • LaneList
  • LanePoolList
  • LogLog
  • Metadata
  • Oauth
  • OauthList
  • Pool
  • PoolList
  • Preferences
  • Process
  • ProcessList
  • Project
  • ProjectAppliQuery
  • ProjectChildList
  • ProjectLaneList
  • ProjectList
  • ProjectProcess
  • ProjectProcessList
  • ProjectProcessQuery
  • ProjectVersion
  • ProjectVersionList
  • Report
  • RequestLog
  • Resource
  • SavedQuery
  • Subscription
  • Token
  • Traffic
  • Usage
  • User
  • UserAccessList
  • UserDelegation
  • UserDelegationList
  • UserLaneList
  • UserList
  • UserRepresentationList
  • UserSupportAuth
  • UserSupportAuthList
  • WebInterface
  • WebInterfaceList

Global

  • context

© Akorbi Digital RMP. All Rights Reserved - Legal terms - Contact