@cocreate/instagram
Version:
A simple instagram component in vanilla javascript. Easily configured using HTML5 attributes and/or JavaScript API.
74 lines (61 loc) • 2.12 kB
JavaScript
'use strict'
class CoCreateInstagram {
constructor(wsManager) {
this.wsManager = wsManager;
this.name = "instagram";
this.init();
}
init() {
if (this.wsManager) {
this.wsManager.on(this.name, (socket, data) => this.sendinstagram(socket, data));
}
}
async sendinstagram(socket, data) {
let params = data['data'];
let environment;
let action = data['action'];
try {
let org = await this.crud.getOrganization(data, this.name);
if (params.environment) {
environment = params['environment'];
delete params['environment'];
} else {
environment = org.apis[this.name].environment;
}
let key = org.apis[this.name][environment];
// twitter = require('stripe')(key);
} catch (e) {
console.log(this.name + " : Error Connect to api", e)
}
try {
let response
switch (action) {
case 'getUserProfile':
response = this.getUserProfile(socket, action, params);
break;
}
this.wsManager.send({ socket, method: this.name, action, response })
} catch (error) {
this.handleError(socket, action, error)
}
}
async getUserProfile(socket, action, params) {
try {
const response = {
'object': 'list',
'data': 'testing success',
};
this.wsManager.send({ socket, "method": action, "response": response })
} catch (error) {
this.handleError(socket, action, error)
}
}
handleError(socket, action, error) {
const response = {
'object': 'error',
'data': error.message || error,
};
this.wsManager.send({ socket, method: this.name, action, response })
}
}//end Class
module.exports = CoCreateInstagram;