playbasis
Version:
Playbasis Javascript SDK
93 lines (31 loc) • 1.21 kB
JavaScript
;
module.exports=function(Playbasis){
var http=Playbasis.http;
var helpers=Playbasis.helpers;
var apiMethod="Engine";
var api=Playbasis.engineApi={};
api.listRules=function(options)
{
var keys=["action","player_id"];
var dvalues=[null,null];
return http.getJsonAsync(helpers.createApiUrl(apiMethod,"rules")+helpers.appendAndJoinIfNotNullAsUrlParam2(keys,dvalues,options));
};
api.ruleDetail=function(ruleId,options)
{
var keys=["player_id"];
var dvalues=[null];
return http.getJsonAsync(helpers.createApiUrl(apiMethod,"rule",ruleId)+helpers.appendAndJoinIfNotNullAsUrlParam2(keys,dvalues,options));
};
api.rule=function(action,playerId,options)
{
var obj={token:Playbasis.env.global.token,action:action,player_id:playerId};
var selectedOptionsObj=helpers.createObjectFromTarget(options,["url","reward","quantity","rule_id","node_id","session_id"]);
var combinedObj=helpers.combineObjects(obj,selectedOptionsObj);
if(options!=null){
if(options.post_custom_params!=null){
combinedObj=helpers.combineObjects(combinedObj,options.post_custom_params);
}
}
return http.postJsonAsync(helpers.createApiUrl(apiMethod,"rule"),combinedObj);
};
};