dc1ab4460be78845c21f58f395e493f2a8c2aabf
[motion2.git] / server / api / template / template.rpc.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xfbe4=['map','include','model','stringify','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','client','http','then','info','Template,\x20%s,\x20%s','request\x20sent','debug','Template,\x20%s,\x20%s,\x20%s','error','message','catch','GetTemplate','findAll','options','raw','where','attributes','limit'];(function(_0x214a8a,_0x1d1707){var _0x586ba5=function(_0x3b3a49){while(--_0x3b3a49){_0x214a8a['push'](_0x214a8a['shift']());}};_0x586ba5(++_0x1d1707);}(_0xfbe4,0xdd));var _0x4fbe=function(_0x4bc81b,_0x12860f){_0x4bc81b=_0x4bc81b-0x0;var _0x4a6c26=_0xfbe4[_0x4bc81b];return _0x4a6c26;};'use strict';var _=require(_0x4fbe('0x0'));var util=require(_0x4fbe('0x1'));var moment=require(_0x4fbe('0x2'));var BPromise=require(_0x4fbe('0x3'));var rs=require(_0x4fbe('0x4'));var fs=require('fs');var Redis=require(_0x4fbe('0x5'));var db=require(_0x4fbe('0x6'))['db'];var utils=require('../../config/utils');var logger=require(_0x4fbe('0x7'))(_0x4fbe('0x8'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson[_0x4fbe('0x9')][_0x4fbe('0xa')]({'port':0x232a});function respondWithRpcPromise(_0x4e40fc,_0x5e0904,_0x58a307){return new BPromise(function(_0x5abacb,_0x1fea1){return client['request'](_0x4e40fc,_0x58a307)[_0x4fbe('0xb')](function(_0x5bc809){logger[_0x4fbe('0xc')](_0x4fbe('0xd'),_0x5e0904,_0x4fbe('0xe'));logger[_0x4fbe('0xf')](_0x4fbe('0x10'),_0x5e0904,_0x4fbe('0xe'),JSON['stringify'](_0x5bc809));if(_0x5bc809[_0x4fbe('0x11')]){if(_0x5bc809[_0x4fbe('0x11')]['code']===0x1f4){logger[_0x4fbe('0x11')](_0x4fbe('0xd'),_0x5e0904,_0x5bc809[_0x4fbe('0x11')][_0x4fbe('0x12')]);return _0x1fea1(_0x5bc809[_0x4fbe('0x11')][_0x4fbe('0x12')]);}logger[_0x4fbe('0x11')](_0x4fbe('0xd'),_0x5e0904,_0x5bc809[_0x4fbe('0x11')][_0x4fbe('0x12')]);return _0x5abacb(_0x5bc809[_0x4fbe('0x11')][_0x4fbe('0x12')]);}else{logger[_0x4fbe('0xc')](_0x4fbe('0xd'),_0x5e0904,'request\x20sent');_0x5abacb(_0x5bc809['result'][_0x4fbe('0x12')]);}})[_0x4fbe('0x13')](function(_0x21a703){logger[_0x4fbe('0x11')]('Template,\x20%s,\x20%s',_0x5e0904,_0x21a703);_0x1fea1(_0x21a703);});});}exports[_0x4fbe('0x14')]=function(_0xe3c16f){var _0x21565e=this;return new Promise(function(_0x496558,_0x230684){return db['Template'][_0x4fbe('0x15')]({'raw':_0xe3c16f[_0x4fbe('0x16')]?_0xe3c16f['options'][_0x4fbe('0x17')]===undefined?!![]:![]:!![],'where':_0xe3c16f['options']?_0xe3c16f['options'][_0x4fbe('0x18')]||null:null,'attributes':_0xe3c16f[_0x4fbe('0x16')]?_0xe3c16f[_0x4fbe('0x16')][_0x4fbe('0x19')]||null:null,'limit':_0xe3c16f[_0x4fbe('0x16')]?_0xe3c16f[_0x4fbe('0x16')][_0x4fbe('0x1a')]||null:null,'include':_0xe3c16f[_0x4fbe('0x16')]?_0xe3c16f['options']['include']?_['map'](_0xe3c16f[_0x4fbe('0x16')]['include'],function(_0x5f09b6){return{'model':db[_0x5f09b6['model']],'as':_0x5f09b6['as'],'attributes':_0x5f09b6[_0x4fbe('0x19')],'include':_0x5f09b6['include']?_[_0x4fbe('0x1b')](_0x5f09b6[_0x4fbe('0x1c')],function(_0x880408){return{'model':db[_0x880408[_0x4fbe('0x1d')]],'as':_0x880408['as'],'attributes':_0x880408[_0x4fbe('0x19')],'include':_0x880408[_0x4fbe('0x1c')]?_[_0x4fbe('0x1b')](_0x880408['include'],function(_0x5cb45d){return{'model':db[_0x5cb45d['model']],'as':_0x5cb45d['as'],'attributes':_0x5cb45d[_0x4fbe('0x19')]};}):[]};}):[]};}):[]:[]})[_0x4fbe('0xb')](function(_0x4b11c6){logger[_0x4fbe('0xc')](_0x4fbe('0x14'),_0xe3c16f);logger[_0x4fbe('0xf')]('GetTemplate',_0xe3c16f,JSON[_0x4fbe('0x1e')](_0x4b11c6));_0x496558(_0x4b11c6);})['catch'](function(_0x18a68f){logger[_0x4fbe('0x11')](_0x4fbe('0x14'),_0x18a68f['message'],_0xe3c16f);_0x230684(_0x21565e[_0x4fbe('0x11')](0x1f4,_0x18a68f['message']));});});};