Built motion from commit 19a84241.|2.5.34
[motion2.git] / server / api / faxTransferReport / faxTransferReport.controller.js
index 6f4b9c2..71bfe76 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9ca0=['query','keys','intersection','attributes','length','hasOwnProperty','order','sort','where','filters','pick','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','rawAttributes','fields','find','create','body','update','describe','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','path','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','then','destroy','end','error','stack','name','index','map','FaxTransferReport','type','key','model'];(function(_0x2f2601,_0x10b8be){var _0x3c6e6=function(_0x12a171){while(--_0x12a171){_0x2f2601['push'](_0x2f2601['shift']());}};_0x3c6e6(++_0x10b8be);}(_0x9ca0,0x65));var _0x09ca=function(_0x1b5aea,_0x3f04b7){_0x1b5aea=_0x1b5aea-0x0;var _0x15cfc6=_0x9ca0[_0x1b5aea];return _0x15cfc6;};'use strict';var pdf=require(_0x09ca('0x0'));var emlformat=require(_0x09ca('0x1'));var rimraf=require(_0x09ca('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x09ca('0x3'));var rp=require(_0x09ca('0x4'));var moment=require('moment');var BPromise=require(_0x09ca('0x5'));var Mustache=require(_0x09ca('0x6'));var util=require('util');var path=require(_0x09ca('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x09ca('0x8'));var fs=require('fs');var _=require(_0x09ca('0x9'));var squel=require(_0x09ca('0xa'));var crypto=require(_0x09ca('0xb'));var jsforce=require(_0x09ca('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x09ca('0xd'));var Papa=require(_0x09ca('0xe'));var Redis=require('ioredis');var authService=require(_0x09ca('0xf'));var qs=require(_0x09ca('0x10'));var as=require(_0x09ca('0x11'));var hardwareService=require(_0x09ca('0x12'));var logger=require(_0x09ca('0x13'))(_0x09ca('0x14'));var utils=require('../../config/utils');var config=require(_0x09ca('0x15'));var licenseUtil=require(_0x09ca('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x16e164,_0x5e47fa){_0x5e47fa=_0x5e47fa||0xcc;return function(_0x1ad33f){if(_0x1ad33f){return _0x16e164[_0x09ca('0x17')](_0x5e47fa);}return _0x16e164[_0x09ca('0x18')](_0x5e47fa)['end']();};}function respondWithResult(_0x57eda0,_0xc23339){_0xc23339=_0xc23339||0xc8;return function(_0x2fa47e){if(_0x2fa47e){return _0x57eda0['status'](_0xc23339)[_0x09ca('0x19')](_0x2fa47e);}};}function respondWithFilteredResult(_0xdb0c26,_0x32eb55){return function(_0x29621d){if(_0x29621d){var _0xb387a5=_0x29621d[_0x09ca('0x1a')],_0x19dbc1=_0x32eb55[_0x09ca('0x1b')],_0x73c85c=_0x32eb55[_0x09ca('0x1b')]+_0x32eb55[_0x09ca('0x1c')],_0x118c6c;if(_0x73c85c>=_0xb387a5){_0x73c85c=_0xb387a5;_0x118c6c=0xc8;}else{_0x118c6c=0xce;}_0xdb0c26['status'](_0x118c6c);return _0xdb0c26[_0x09ca('0x1d')](_0x09ca('0x1e'),_0x19dbc1+'-'+_0x73c85c+'/'+_0xb387a5)[_0x09ca('0x19')](_0x29621d);}return null;};}function patchUpdates(_0x8397ae){return function(_0x206fdb){try{jsonpatch[_0x09ca('0x1f')](_0x206fdb,_0x8397ae,!![]);}catch(_0x11be35){return BPromise[_0x09ca('0x20')](_0x11be35);}return _0x206fdb['save']();};}function saveUpdates(_0x26c2c3,_0xfe4fea){return function(_0x2763d1){if(_0x2763d1){return _0x2763d1['update'](_0x26c2c3)[_0x09ca('0x21')](function(_0x12c609){return _0x12c609;});}return null;};}function removeEntity(_0xacdffd,_0x25b2d9){return function(_0x48ec36){if(_0x48ec36){return _0x48ec36[_0x09ca('0x22')]()[_0x09ca('0x21')](function(){_0xacdffd[_0x09ca('0x18')](0xcc)[_0x09ca('0x23')]();});}};}function handleEntityNotFound(_0x44f036,_0x234fcd){return function(_0x1bb677){if(!_0x1bb677){_0x44f036['sendStatus'](0x194);}return _0x1bb677;};}function handleError(_0x2558a3,_0x318b4b){_0x318b4b=_0x318b4b||0x1f4;return function(_0x459822){logger[_0x09ca('0x24')](_0x459822[_0x09ca('0x25')]);if(_0x459822[_0x09ca('0x26')]){delete _0x459822[_0x09ca('0x26')];}_0x2558a3[_0x09ca('0x18')](_0x318b4b)['send'](_0x459822);};}exports[_0x09ca('0x27')]=function(_0x2a26c4,_0x864eda){var _0x4b3da5={},_0x545a7e={},_0x274857={'count':0x0,'rows':[]};var _0xeca4b9=_[_0x09ca('0x28')](db[_0x09ca('0x29')]['rawAttributes'],function(_0x2d2f54){return{'name':_0x2d2f54['fieldName'],'type':_0x2d2f54[_0x09ca('0x2a')][_0x09ca('0x2b')]};});_0x545a7e[_0x09ca('0x2c')]=_['map'](_0xeca4b9,'name');_0x545a7e[_0x09ca('0x2d')]=_[_0x09ca('0x2e')](_0x2a26c4['query']);_0x545a7e['filters']=_[_0x09ca('0x2f')](_0x545a7e[_0x09ca('0x2c')],_0x545a7e[_0x09ca('0x2d')]);_0x4b3da5[_0x09ca('0x30')]=_[_0x09ca('0x2f')](_0x545a7e[_0x09ca('0x2c')],qs['fields'](_0x2a26c4[_0x09ca('0x2d')]['fields']));_0x4b3da5[_0x09ca('0x30')]=_0x4b3da5[_0x09ca('0x30')][_0x09ca('0x31')]?_0x4b3da5['attributes']:_0x545a7e[_0x09ca('0x2c')];if(!_0x2a26c4['query'][_0x09ca('0x32')]('nolimit')){_0x4b3da5[_0x09ca('0x1c')]=qs[_0x09ca('0x1c')](_0x2a26c4['query'][_0x09ca('0x1c')]);_0x4b3da5[_0x09ca('0x1b')]=qs[_0x09ca('0x1b')](_0x2a26c4['query'][_0x09ca('0x1b')]);}_0x4b3da5[_0x09ca('0x33')]=qs[_0x09ca('0x34')](_0x2a26c4[_0x09ca('0x2d')]['sort']);_0x4b3da5[_0x09ca('0x35')]=qs[_0x09ca('0x36')](_[_0x09ca('0x37')](_0x2a26c4[_0x09ca('0x2d')],_0x545a7e['filters']),_0xeca4b9);if(_0x2a26c4[_0x09ca('0x2d')]['filter']){_0x4b3da5['where']=_[_0x09ca('0x38')](_0x4b3da5['where'],{'$or':_[_0x09ca('0x28')](_0xeca4b9,function(_0x1b6827){if(_0x1b6827[_0x09ca('0x2a')]!==_0x09ca('0x39')){var _0x502a57={};_0x502a57[_0x1b6827[_0x09ca('0x26')]]={'$like':'%'+_0x2a26c4['query']['filter']+'%'};return _0x502a57;}})});}_0x4b3da5=_[_0x09ca('0x38')]({},_0x4b3da5,_0x2a26c4[_0x09ca('0x3a')]);var _0x5f3096={'where':_0x4b3da5[_0x09ca('0x35')]};return db[_0x09ca('0x29')]['count'](_0x5f3096)[_0x09ca('0x21')](function(_0x1cc0dc){_0x274857['count']=_0x1cc0dc;if(_0x2a26c4[_0x09ca('0x2d')][_0x09ca('0x3b')]){_0x4b3da5[_0x09ca('0x3c')]=[{'all':!![]}];}return db[_0x09ca('0x29')][_0x09ca('0x3d')](_0x4b3da5);})[_0x09ca('0x21')](function(_0x26f7c2){_0x274857[_0x09ca('0x3e')]=_0x26f7c2;return _0x274857;})['then'](respondWithFilteredResult(_0x864eda,_0x4b3da5))[_0x09ca('0x3f')](handleError(_0x864eda,null));};exports[_0x09ca('0x40')]=function(_0x42b354,_0x21fe62){var _0x2940c5={'raw':!![],'where':{'id':_0x42b354[_0x09ca('0x41')]['id']}},_0x2283c1={};_0x2283c1['model']=_[_0x09ca('0x2e')](db['FaxTransferReport'][_0x09ca('0x42')]);_0x2283c1['query']=_[_0x09ca('0x2e')](_0x42b354[_0x09ca('0x2d')]);_0x2283c1[_0x09ca('0x36')]=_[_0x09ca('0x2f')](_0x2283c1[_0x09ca('0x2c')],_0x2283c1[_0x09ca('0x2d')]);_0x2940c5['attributes']=_[_0x09ca('0x2f')](_0x2283c1[_0x09ca('0x2c')],qs[_0x09ca('0x43')](_0x42b354[_0x09ca('0x2d')][_0x09ca('0x43')]));_0x2940c5[_0x09ca('0x30')]=_0x2940c5[_0x09ca('0x30')][_0x09ca('0x31')]?_0x2940c5['attributes']:_0x2283c1[_0x09ca('0x2c')];if(_0x42b354[_0x09ca('0x2d')][_0x09ca('0x3b')]){_0x2940c5[_0x09ca('0x3c')]=[{'all':!![]}];}_0x2940c5=_[_0x09ca('0x38')]({},_0x2940c5,_0x42b354[_0x09ca('0x3a')]);return db['FaxTransferReport'][_0x09ca('0x44')](_0x2940c5)['then'](handleEntityNotFound(_0x21fe62,null))[_0x09ca('0x21')](respondWithResult(_0x21fe62,null))[_0x09ca('0x3f')](handleError(_0x21fe62,null));};exports[_0x09ca('0x45')]=function(_0x2f0c37,_0x3dc483){return db[_0x09ca('0x29')][_0x09ca('0x45')](_0x2f0c37[_0x09ca('0x46')],{})[_0x09ca('0x21')](respondWithResult(_0x3dc483,0xc9))['catch'](handleError(_0x3dc483,null));};exports[_0x09ca('0x47')]=function(_0xb8c2f0,_0x1507d1){if(_0xb8c2f0[_0x09ca('0x46')]['id']){delete _0xb8c2f0[_0x09ca('0x46')]['id'];}return db[_0x09ca('0x29')]['find']({'where':{'id':_0xb8c2f0[_0x09ca('0x41')]['id']}})[_0x09ca('0x21')](handleEntityNotFound(_0x1507d1,null))[_0x09ca('0x21')](saveUpdates(_0xb8c2f0[_0x09ca('0x46')],null))[_0x09ca('0x21')](respondWithResult(_0x1507d1,null))[_0x09ca('0x3f')](handleError(_0x1507d1,null));};exports[_0x09ca('0x22')]=function(_0x89a473,_0x286bf3){return db[_0x09ca('0x29')][_0x09ca('0x44')]({'where':{'id':_0x89a473[_0x09ca('0x41')]['id']}})['then'](handleEntityNotFound(_0x286bf3,null))[_0x09ca('0x21')](removeEntity(_0x286bf3,null))[_0x09ca('0x3f')](handleError(_0x286bf3,null));};exports['describe']=function(_0x217775,_0x5c041f){return db[_0x09ca('0x29')][_0x09ca('0x48')]()[_0x09ca('0x21')](respondWithResult(_0x5c041f,null))[_0x09ca('0x3f')](handleError(_0x5c041f,null));};
\ No newline at end of file
+var _0x468d=['pick','merge','type','VIRTUAL','options','include','findAll','rows','keys','find','catch','create','update','body','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','sox','to-csv','ejs','fs-extra','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../mysqldb','status','end','json','offset','limit','count','Content-Range','save','then','destroy','sendStatus','error','stack','name','send','index','map','FaxTransferReport','rawAttributes','fieldName','key','model','query','filters','intersection','attributes','fields','length','order','sort','where'];(function(_0x218a92,_0x1ecc5a){var _0x24bfda=function(_0xabed5d){while(--_0xabed5d){_0x218a92['push'](_0x218a92['shift']());}};_0x24bfda(++_0x1ecc5a);}(_0x468d,0xdf));var _0xd468=function(_0x3eb99e,_0x87a486){_0x3eb99e=_0x3eb99e-0x0;var _0xf0410e=_0x468d[_0x3eb99e];return _0xf0410e;};'use strict';var emlformat=require(_0xd468('0x0'));var rimraf=require(_0xd468('0x1'));var zipdir=require(_0xd468('0x2'));var jsonpatch=require(_0xd468('0x3'));var rp=require(_0xd468('0x4'));var moment=require(_0xd468('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xd468('0x6'));var util=require('util');var path=require('path');var sox=require(_0xd468('0x7'));var csv=require(_0xd468('0x8'));var ejs=require(_0xd468('0x9'));var fs=require('fs');var fs_extra=require(_0xd468('0xa'));var _=require('lodash');var squel=require(_0xd468('0xb'));var crypto=require(_0xd468('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xd468('0xd'));var toCsv=require(_0xd468('0x8'));var querystring=require('querystring');var Papa=require(_0xd468('0xe'));var Redis=require(_0xd468('0xf'));var authService=require(_0xd468('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xd468('0x11'));var hardwareService=require(_0xd468('0x12'));var logger=require(_0xd468('0x13'))(_0xd468('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xd468('0x15'))['db'];function respondWithStatusCode(_0x313c84,_0x366244){_0x366244=_0x366244||0xcc;return function(_0x192445){if(_0x192445){return _0x313c84['sendStatus'](_0x366244);}return _0x313c84[_0xd468('0x16')](_0x366244)[_0xd468('0x17')]();};}function respondWithResult(_0x206e5b,_0xdb17b9){_0xdb17b9=_0xdb17b9||0xc8;return function(_0x4aa6c3){if(_0x4aa6c3){return _0x206e5b['status'](_0xdb17b9)[_0xd468('0x18')](_0x4aa6c3);}};}function respondWithFilteredResult(_0x5b4a6b,_0x2580d7){return function(_0x50d52b){if(_0x50d52b){var _0x16cdfd=typeof _0x2580d7[_0xd468('0x19')]==='undefined'&&typeof _0x2580d7[_0xd468('0x1a')]==='undefined';var _0x3131cf=_0x50d52b[_0xd468('0x1b')];var _0x42b8f6=_0x16cdfd?0x0:_0x2580d7['offset'];var _0x40e858=_0x16cdfd?_0x50d52b['count']:_0x2580d7[_0xd468('0x19')]+_0x2580d7[_0xd468('0x1a')];var _0x350fba;if(_0x40e858>=_0x3131cf){_0x40e858=_0x3131cf;_0x350fba=0xc8;}else{_0x350fba=0xce;}_0x5b4a6b[_0xd468('0x16')](_0x350fba);return _0x5b4a6b['set'](_0xd468('0x1c'),_0x42b8f6+'-'+_0x40e858+'/'+_0x3131cf)[_0xd468('0x18')](_0x50d52b);}return null;};}function patchUpdates(_0x53eb80){return function(_0x45c35d){try{jsonpatch['apply'](_0x45c35d,_0x53eb80,!![]);}catch(_0xc0a74a){return BPromise['reject'](_0xc0a74a);}return _0x45c35d[_0xd468('0x1d')]();};}function saveUpdates(_0xd3da92,_0x37e0ff){return function(_0xde42ca){if(_0xde42ca){return _0xde42ca['update'](_0xd3da92)[_0xd468('0x1e')](function(_0x5dd316){return _0x5dd316;});}return null;};}function removeEntity(_0x16940f,_0xe619){return function(_0x26efeb){if(_0x26efeb){return _0x26efeb[_0xd468('0x1f')]()[_0xd468('0x1e')](function(){_0x16940f['status'](0xcc)[_0xd468('0x17')]();});}};}function handleEntityNotFound(_0x477f03,_0xee11eb){return function(_0x2a52c4){if(!_0x2a52c4){_0x477f03[_0xd468('0x20')](0x194);}return _0x2a52c4;};}function handleError(_0x22f85c,_0x67d04b){_0x67d04b=_0x67d04b||0x1f4;return function(_0xc3aed3){logger[_0xd468('0x21')](_0xc3aed3[_0xd468('0x22')]);if(_0xc3aed3[_0xd468('0x23')]){delete _0xc3aed3[_0xd468('0x23')];}_0x22f85c[_0xd468('0x16')](_0x67d04b)[_0xd468('0x24')](_0xc3aed3);};}exports[_0xd468('0x25')]=function(_0x1699a1,_0x1ee5de){var _0x565f77={},_0x58d05e={},_0x4d718c={'count':0x0,'rows':[]};var _0x47ad72=_[_0xd468('0x26')](db[_0xd468('0x27')][_0xd468('0x28')],function(_0x31a9d7){return{'name':_0x31a9d7[_0xd468('0x29')],'type':_0x31a9d7['type'][_0xd468('0x2a')]};});_0x58d05e[_0xd468('0x2b')]=_[_0xd468('0x26')](_0x47ad72,_0xd468('0x23'));_0x58d05e['query']=_['keys'](_0x1699a1[_0xd468('0x2c')]);_0x58d05e[_0xd468('0x2d')]=_[_0xd468('0x2e')](_0x58d05e[_0xd468('0x2b')],_0x58d05e['query']);_0x565f77[_0xd468('0x2f')]=_['intersection'](_0x58d05e['model'],qs['fields'](_0x1699a1[_0xd468('0x2c')][_0xd468('0x30')]));_0x565f77[_0xd468('0x2f')]=_0x565f77[_0xd468('0x2f')][_0xd468('0x31')]?_0x565f77['attributes']:_0x58d05e[_0xd468('0x2b')];if(!_0x1699a1['query']['hasOwnProperty']('nolimit')){_0x565f77[_0xd468('0x1a')]=qs[_0xd468('0x1a')](_0x1699a1['query'][_0xd468('0x1a')]);_0x565f77[_0xd468('0x19')]=qs[_0xd468('0x19')](_0x1699a1['query']['offset']);}_0x565f77[_0xd468('0x32')]=qs[_0xd468('0x33')](_0x1699a1[_0xd468('0x2c')]['sort']);_0x565f77[_0xd468('0x34')]=qs[_0xd468('0x2d')](_[_0xd468('0x35')](_0x1699a1['query'],_0x58d05e[_0xd468('0x2d')]),_0x47ad72);if(_0x1699a1['query']['filter']){_0x565f77['where']=_[_0xd468('0x36')](_0x565f77[_0xd468('0x34')],{'$or':_[_0xd468('0x26')](_0x47ad72,function(_0x4034ac){if(_0x4034ac[_0xd468('0x37')]!==_0xd468('0x38')){var _0x742e6d={};_0x742e6d[_0x4034ac['name']]={'$like':'%'+_0x1699a1[_0xd468('0x2c')]['filter']+'%'};return _0x742e6d;}})});}_0x565f77=_[_0xd468('0x36')]({},_0x565f77,_0x1699a1[_0xd468('0x39')]);var _0x64a9={'where':_0x565f77[_0xd468('0x34')]};return db[_0xd468('0x27')][_0xd468('0x1b')](_0x64a9)[_0xd468('0x1e')](function(_0x58a537){_0x4d718c[_0xd468('0x1b')]=_0x58a537;if(_0x1699a1[_0xd468('0x2c')]['includeAll']){_0x565f77[_0xd468('0x3a')]=[{'all':!![]}];}return db[_0xd468('0x27')][_0xd468('0x3b')](_0x565f77);})[_0xd468('0x1e')](function(_0x2dcf0a){_0x4d718c[_0xd468('0x3c')]=_0x2dcf0a;return _0x4d718c;})['then'](respondWithFilteredResult(_0x1ee5de,_0x565f77))['catch'](handleError(_0x1ee5de,null));};exports['show']=function(_0x86ec5c,_0x278c1c){var _0x4bc777={'raw':!![],'where':{'id':_0x86ec5c['params']['id']}},_0x51a9ed={};_0x51a9ed[_0xd468('0x2b')]=_[_0xd468('0x3d')](db[_0xd468('0x27')][_0xd468('0x28')]);_0x51a9ed[_0xd468('0x2c')]=_[_0xd468('0x3d')](_0x86ec5c[_0xd468('0x2c')]);_0x51a9ed['filters']=_['intersection'](_0x51a9ed[_0xd468('0x2b')],_0x51a9ed[_0xd468('0x2c')]);_0x4bc777[_0xd468('0x2f')]=_['intersection'](_0x51a9ed[_0xd468('0x2b')],qs[_0xd468('0x30')](_0x86ec5c[_0xd468('0x2c')][_0xd468('0x30')]));_0x4bc777[_0xd468('0x2f')]=_0x4bc777[_0xd468('0x2f')]['length']?_0x4bc777[_0xd468('0x2f')]:_0x51a9ed['model'];if(_0x86ec5c[_0xd468('0x2c')]['includeAll']){_0x4bc777[_0xd468('0x3a')]=[{'all':!![]}];}_0x4bc777=_[_0xd468('0x36')]({},_0x4bc777,_0x86ec5c['options']);return db[_0xd468('0x27')][_0xd468('0x3e')](_0x4bc777)['then'](handleEntityNotFound(_0x278c1c,null))[_0xd468('0x1e')](respondWithResult(_0x278c1c,null))[_0xd468('0x3f')](handleError(_0x278c1c,null));};exports['create']=function(_0x99d4cc,_0x2ebcac){return db[_0xd468('0x27')][_0xd468('0x40')](_0x99d4cc['body'],{})[_0xd468('0x1e')](respondWithResult(_0x2ebcac,0xc9))['catch'](handleError(_0x2ebcac,null));};exports[_0xd468('0x41')]=function(_0x1c0f36,_0x3c53de){if(_0x1c0f36[_0xd468('0x42')]['id']){delete _0x1c0f36['body']['id'];}return db[_0xd468('0x27')][_0xd468('0x3e')]({'where':{'id':_0x1c0f36[_0xd468('0x43')]['id']}})[_0xd468('0x1e')](handleEntityNotFound(_0x3c53de,null))['then'](saveUpdates(_0x1c0f36[_0xd468('0x42')],null))['then'](respondWithResult(_0x3c53de,null))[_0xd468('0x3f')](handleError(_0x3c53de,null));};exports[_0xd468('0x1f')]=function(_0x39e852,_0x26c1f1){return db[_0xd468('0x27')][_0xd468('0x3e')]({'where':{'id':_0x39e852[_0xd468('0x43')]['id']}})['then'](handleEntityNotFound(_0x26c1f1,null))[_0xd468('0x1e')](removeEntity(_0x26c1f1,null))[_0xd468('0x3f')](handleError(_0x26c1f1,null));};exports['describe']=function(_0x559ba7,_0x2bdb6c){return db[_0xd468('0x27')][_0xd468('0x44')]()[_0xd468('0x1e')](respondWithResult(_0x2bdb6c,null))['catch'](handleError(_0x2bdb6c,null));};
\ No newline at end of file