{"version":3,"file":"default-src_app_provider_iqapi_iqapi_service_ts.js","mappings":";;;;;;;;;;;;;AAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACT2C;AACpC;AACP;AACA,mBAAmB,mDAAU;AAC7B;AACA;AACA,mBAAmB,mDAAU,iDAAiD,mBAAmB;AACjG;AACA;AACA,oBAAoB,mBAAmB;AACvC;AACA;;;;;;;;;;;;;;;;;;;ACX2C;AACS;AACR;AACU;AAC/C,kCAAkC,mDAAK;AAC9C,WAAW,yDAAW,MAAM,kEAAU,KAAK,4DAAY;AACvD;;;;;;;;;;;;;;;;;;ACN2C;AACH;AACyD;AAC1F,sDAAsD,mDAAK;AAClE;AACA,8BAA8B,oDAAM;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,kEAAqB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA,uBAAuB,+DAAc,qBAAqB,kEAAqB;AAC/E;AACA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACvD+C;AACxC,qBAAqB,uDAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACRkC;AAC3B,0BAA0B,2CAAM;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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","sources":["./node_modules/rxjs/_esm2015/internal/Scheduler.js","./node_modules/rxjs/_esm2015/internal/observable/throwError.js","./node_modules/rxjs/_esm2015/internal/operators/timeout.js","./node_modules/rxjs/_esm2015/internal/operators/timeoutWith.js","./node_modules/rxjs/_esm2015/internal/scheduler/Action.js","./node_modules/rxjs/_esm2015/internal/scheduler/AsyncAction.js","./node_modules/rxjs/_esm2015/internal/scheduler/AsyncScheduler.js","./node_modules/rxjs/_esm2015/internal/scheduler/async.js","./node_modules/rxjs/_esm2015/internal/util/TimeoutError.js","./node_modules/rxjs/_esm2015/internal/util/isDate.js","./src/app/provider/filesystem/filesystem.service.ts","./src/app/provider/iqapi/iqapi.service.ts"],"sourcesContent":["export class Scheduler {\n constructor(SchedulerAction, now = Scheduler.now) {\n this.SchedulerAction = SchedulerAction;\n this.now = now;\n }\n schedule(work, delay = 0, state) {\n return new this.SchedulerAction(this, work).schedule(state, delay);\n }\n}\nScheduler.now = () => Date.now();\n","import { Observable } from '../Observable';\nexport function throwError(error, scheduler) {\n if (!scheduler) {\n return new Observable(subscriber => subscriber.error(error));\n }\n else {\n return new Observable(subscriber => scheduler.schedule(dispatch, 0, { error, subscriber }));\n }\n}\nfunction dispatch({ error, subscriber }) {\n subscriber.error(error);\n}\n","import { async } from '../scheduler/async';\nimport { TimeoutError } from '../util/TimeoutError';\nimport { timeoutWith } from './timeoutWith';\nimport { throwError } from '../observable/throwError';\nexport function timeout(due, scheduler = async) {\n return timeoutWith(due, throwError(new TimeoutError()), scheduler);\n}\n","import { async } from '../scheduler/async';\nimport { isDate } from '../util/isDate';\nimport { SimpleOuterSubscriber, innerSubscribe, SimpleInnerSubscriber } from '../innerSubscribe';\nexport function timeoutWith(due, withObservable, scheduler = async) {\n return (source) => {\n let absoluteTimeout = isDate(due);\n let waitFor = absoluteTimeout ? (+due - scheduler.now()) : Math.abs(due);\n return source.lift(new TimeoutWithOperator(waitFor, absoluteTimeout, withObservable, scheduler));\n };\n}\nclass TimeoutWithOperator {\n constructor(waitFor, absoluteTimeout, withObservable, scheduler) {\n this.waitFor = waitFor;\n this.absoluteTimeout = absoluteTimeout;\n this.withObservable = withObservable;\n this.scheduler = scheduler;\n }\n call(subscriber, source) {\n return source.subscribe(new TimeoutWithSubscriber(subscriber, this.absoluteTimeout, this.waitFor, this.withObservable, this.scheduler));\n }\n}\nclass TimeoutWithSubscriber extends SimpleOuterSubscriber {\n constructor(destination, absoluteTimeout, waitFor, withObservable, scheduler) {\n super(destination);\n this.absoluteTimeout = absoluteTimeout;\n this.waitFor = waitFor;\n this.withObservable = withObservable;\n this.scheduler = scheduler;\n this.scheduleTimeout();\n }\n static dispatchTimeout(subscriber) {\n const { withObservable } = subscriber;\n subscriber._unsubscribeAndRecycle();\n subscriber.add(innerSubscribe(withObservable, new SimpleInnerSubscriber(subscriber)));\n }\n scheduleTimeout() {\n const { action } = this;\n if (action) {\n this.action = action.schedule(this, this.waitFor);\n }\n else {\n this.add(this.action = this.scheduler.schedule(TimeoutWithSubscriber.dispatchTimeout, this.waitFor, this));\n }\n }\n _next(value) {\n if (!this.absoluteTimeout) {\n this.scheduleTimeout();\n }\n super._next(value);\n }\n _unsubscribe() {\n this.action = undefined;\n this.scheduler = null;\n this.withObservable = null;\n }\n}\n","import { Subscription } from '../Subscription';\nexport class Action extends Subscription {\n constructor(scheduler, work) {\n super();\n }\n schedule(state, delay = 0) {\n return this;\n }\n}\n","import { Action } from './Action';\nexport class AsyncAction extends Action {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n this.pending = false;\n }\n schedule(state, delay = 0) {\n if (this.closed) {\n return this;\n }\n this.state = state;\n const id = this.id;\n const scheduler = this.scheduler;\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n this.pending = true;\n this.delay = delay;\n this.id = this.id || this.requestAsyncId(scheduler, this.id, delay);\n return this;\n }\n requestAsyncId(scheduler, id, delay = 0) {\n return setInterval(scheduler.flush.bind(scheduler, this), delay);\n }\n recycleAsyncId(scheduler, id, delay = 0) {\n if (delay !== null && this.delay === delay && this.pending === false) {\n return id;\n }\n clearInterval(id);\n return undefined;\n }\n execute(state, delay) {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n this.pending = false;\n const error = this._execute(state, delay);\n if (error) {\n return error;\n }\n else if (this.pending === false && this.id != null) {\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n }\n _execute(state, delay) {\n let errored = false;\n let errorValue = undefined;\n try {\n this.work(state);\n }\n catch (e) {\n errored = true;\n errorValue = !!e && e || new Error(e);\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n }\n _unsubscribe() {\n const id = this.id;\n const scheduler = this.scheduler;\n const actions = scheduler.actions;\n const index = actions.indexOf(this);\n this.work = null;\n this.state = null;\n this.pending = false;\n this.scheduler = null;\n if (index !== -1) {\n actions.splice(index, 1);\n }\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n this.delay = null;\n }\n}\n","import { Scheduler } from '../Scheduler';\nexport class AsyncScheduler extends Scheduler {\n constructor(SchedulerAction, now = Scheduler.now) {\n super(SchedulerAction, () => {\n if (AsyncScheduler.delegate && AsyncScheduler.delegate !== this) {\n return AsyncScheduler.delegate.now();\n }\n else {\n return now();\n }\n });\n this.actions = [];\n this.active = false;\n this.scheduled = undefined;\n }\n schedule(work, delay = 0, state) {\n if (AsyncScheduler.delegate && AsyncScheduler.delegate !== this) {\n return AsyncScheduler.delegate.schedule(work, delay, state);\n }\n else {\n return super.schedule(work, delay, state);\n }\n }\n flush(action) {\n const { actions } = this;\n if (this.active) {\n actions.push(action);\n return;\n }\n let error;\n this.active = true;\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (action = actions.shift());\n this.active = false;\n if (error) {\n while (action = actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n","import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\nexport const asyncScheduler = new AsyncScheduler(AsyncAction);\nexport const async = asyncScheduler;\n","const TimeoutErrorImpl = (() => {\n function TimeoutErrorImpl() {\n Error.call(this);\n this.message = 'Timeout has occurred';\n this.name = 'TimeoutError';\n return this;\n }\n TimeoutErrorImpl.prototype = Object.create(Error.prototype);\n return TimeoutErrorImpl;\n})();\nexport const TimeoutError = TimeoutErrorImpl;\n","export function isDate(value) {\n return value instanceof Date && !isNaN(+value);\n}\n","import {Injectable} from '@angular/core';\r\nimport {File, Entry, FileEntry} from '@awesome-cordova-plugins/file/ngx';\r\nimport {Platform} from '@ionic/angular';\r\nimport {ErrorHandlingService} from '../error-handling/error-handling.service';\r\nimport {APP_STORAGE, CACHE_DOWNLOAD_DIRECTORY, DIRECTORY_TREE} from '../../../environments/environment';\r\nimport {MessagesService} from '../messages/messages.service';\r\nimport {FilePath} from '@awesome-cordova-plugins/file-path/ngx';\r\nimport {FileTransfer, FileTransferObject} from '@awesome-cordova-plugins/file-transfer/ngx';\r\nimport {FileOpener} from '@awesome-cordova-plugins/file-opener/ngx';\r\nimport {\r\n\tConfigurationObject,\r\n\tDetailObject,\r\n\tFileHandlingAction,\r\n\tFileObj\r\n} from '../../interfaces/interfaces.regisafe';\r\nimport {Storage} from '@ionic/storage';\r\nimport {AppConfig} from '../../app.config';\r\n\r\ndeclare let cordova: any;\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class FileSystemService {\r\n\r\n\tpublic configuration: ConfigurationObject;\r\n\r\n\t/**\r\n\t * deviceSpecificDirectoryTree()\r\n\t * return file structure depending on platform (ios/android)\r\n\t */\r\n\ttree: any = {\r\n\t\tdirectory: '',\r\n\t\tregisafeRootPath: ''\r\n\t};\r\n\r\n\tconstructor(private file: File,\r\n\t\t\t\tprivate filePath: FilePath,\r\n\t\t\t\tprivate platform: Platform,\r\n\t\t\t\tprivate errorHandling: ErrorHandlingService,\r\n\t\t\t\tprivate msgService: MessagesService,\r\n\t\t\t\tprivate transfer: FileTransfer,\r\n\t\t\t\tprivate storage: Storage,\r\n\t\t\t\tprivate fileOpener: FileOpener,\r\n\t\t\t\tpublic appConfig: AppConfig) {\r\n\r\n\t\tthis.configuration = this.appConfig.getConfig();\r\n\r\n\t}\r\n\r\n\r\n\tdeviceSpecificDirectoryTree(): any {\r\n\t\tif (this.platform.is('ios')) {\r\n\t\t\tthis.tree.directory = cordova.file.documentsDirectory;\r\n\t\t} else if (this.platform.is('android')) {\r\n\t\t\tthis.tree.directory = cordova.file.externalDataDirectory;\r\n\t\t\tthis.tree.regisafeRootPath = 'regisafeapp/';\r\n\t\t}\r\n\t\treturn this.tree;\r\n\t}\r\n\r\n\tdeviceSpecificCacheDirectory(): any {\r\n\t\tlet directory: any;\r\n\t\tif (this.platform.is('ios')) {\r\n\t\t\tdirectory = cordova.file.cacheDirectory;\r\n\t\t} else if (this.platform.is('android')) {\r\n\t\t\tdirectory = cordova.file.cacheDirectory;\r\n\t\t}\r\n\t\treturn directory;\r\n\t}\r\n\r\n\t/**\r\n\t * create necessary Folders for regisafe App\r\n\t * DIRECTORY_TREE.root\r\n\t */\r\n\tcreateMainFoldersForRegisafe() {\r\n\r\n\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\r\n\t\tconsole.log('createMainFoldersForRegisafe - tree ###', tree);\r\n\r\n\t\t// Ordner für regisafe erstellen\r\n\t\tthis.file.createDir(tree.directory, DIRECTORY_TREE.root, false)\r\n\t\t\t.then((dirEntry) => {\r\n\t\t\t\t// erfolgreich erstellt\r\n\t\t\t\tif (dirEntry.isDirectory) {\r\n\t\t\t\t\t// create Folder for \"add\"\r\n\t\t\t\t\tthis.createMainFolderForCapture();\r\n\t\t\t\t\t// create Folder for \"edit\"\r\n\t\t\t\t\tthis.createMainFolderForEdit();\r\n\t\t\t\t}\r\n\t\t\t}, (e) => {\r\n\t\t\t\tif (e.code === 12) {\r\n\t\t\t\t\t// create Folder for \"add\"\r\n\t\t\t\t\tthis.createMainFolderForCapture();\r\n\t\t\t\t\t// create Folder for \"editn\"\r\n\t\t\t\t\tthis.createMainFolderForEdit();\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Fehler\r\n\t\t\t\t\tconsole.log('createMainFolderForRegisafe ERROR: ', e);\r\n\t\t\t\t\tthis.errorHandling.handleFileSystemError(e);\r\n\t\t\t\t}\r\n\t\t\t}).catch((e) => {\r\n\t\t\tconsole.log('createMainFoldersForRegisafe this.file.createDir: ', e);\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * create necessary SubFolders for regisafe App\r\n\t * DIRECTORY_TREE.subfolders.add\r\n\t */\r\n\tcreateMainFolderForCapture() {\r\n\r\n\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\r\n\t\t// Ordner für Capture erstellen\r\n\t\tthis.file.createDir(tree.directory, tree.regisafeRootPath + DIRECTORY_TREE.subfolders.add, false)\r\n\t\t\t.then((dirEntry) => {\r\n\t\t\t\t// erfolgreich erstellt\r\n\t\t\t\tif (dirEntry.isDirectory) {\r\n\t\t\t\t\tconsole.log('createMainFolderForCapture: ', dirEntry);\r\n\t\t\t\t}\r\n\t\t\t}, (e) => {\r\n\t\t\t\t// Ordner existiert bereits (e.message === PATH_EXISTS_ERR)\r\n\t\t\t\tif (e.code === 12) {\r\n\t\t\t\t\t// console.log('createMainFolderForCapture PATH_EXISTS_ERR: ', e);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Fehler\r\n\t\t\t\t\tconsole.log('createMainFolderForCapture ERROR: ', e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * create necessary SubFolders for regisafe App\r\n\t * DIRECTORY_TREE.subfolders.edit\r\n\t */\r\n\tcreateMainFolderForEdit() {\r\n\r\n\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\r\n\t\t// Ordner für Capture erstellen\r\n\t\tthis.file.createDir(tree.directory, tree.regisafeRootPath + DIRECTORY_TREE.subfolders.edit, false)\r\n\t\t\t.then((dirEntry) => {\r\n\t\t\t\t// erfolgreich erstellt\r\n\t\t\t\tif (dirEntry.isDirectory) {\r\n\t\t\t\t\tconsole.log('createMainFolderForEdit: ', dirEntry);\r\n\t\t\t\t}\r\n\t\t\t}, (e) => {\r\n\t\t\t\t// Ordner existiert bereits (e.message === PATH_EXISTS_ERR)\r\n\t\t\t\tif (e.code === 12) {\r\n\t\t\t\t\t// console.log('createMainFolderForEdit PATH_EXISTS_ERR: ', e);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Fehler\r\n\t\t\t\t\tconsole.log('createMainFolderForEdit ERROR: ', e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Nimmt den Dateipfad von Cordova Plugin Camera entgegen,\r\n\t * prüft ob der Ordner 'DIRECTORY_TREE.subfolders.edit' existiert\r\n\t * und kopiert die Datei nach 'DIRECTORY_TREE.subfolders.edit'.\r\n\t *\r\n\t * Im Erfolgsfall wird eine Message 'filesystem:copy' an die View zurückgeben,\r\n\t * diese enthält ebenfalls das FileEntry-Object\r\n\t *\r\n\t * @param filePath - Dateipfad von Cordova Plugin Camera\r\n\t */\r\n\tstoreCameraImage(filePath: any) {\r\n\r\n\t\tthis.file.resolveLocalFilesystemUrl(filePath)\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('storeCameraImage resolveLocalFilesystemUrl error: ', e);\r\n\t\t\t})\r\n\t\t\t.then((fileEntry: Entry) => {\r\n\r\n\t\t\t\tconst fileUniqueId = 'regisafeapp-' + (new Date().getTime()).toString(16) + DIRECTORY_TREE.imagefileext;\r\n\t\t\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\t\t\t\tconst destination = DIRECTORY_TREE.subfolders.add;\r\n\r\n\t\t\t\tthis.file.checkDir(tree.directory, tree.regisafeRootPath + destination)\r\n\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\tconsole.log('storeCameraImage checkDir error: ', e);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.then((dirEntry) => {\r\n\r\n\t\t\t\t\t\tconst path = filePath.substring(0, filePath.lastIndexOf('/'));\r\n\t\t\t\t\t\tconst filename = filePath.substring(filePath.lastIndexOf('/') + 1);\r\n\r\n\t\t\t\t\t\tthis.file.copyFile(path, filename, tree.directory + tree.regisafeRootPath + destination, fileUniqueId)\r\n\t\t\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\t\t\tconsole.log('copyFile error: ', e);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t.then((copiedFileEntry) => {\r\n\t\t\t\t\t\t\t\tthis.msgService.sendMessage({context: 'filesystem:copy', entry: copiedFileEntry});\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t});\r\n\t}\r\n\r\n\tstoreChoosingFile(url: string) {\r\n\t\tthis.filePath.resolveNativePath(url)\r\n\t\t\t.then((filePath) => {\r\n\t\t\t\tconsole.log('storeChoosingFile filePath.resolveNativePath: ', filePath);\r\n\r\n\t\t\t\tthis.file.resolveLocalFilesystemUrl(filePath)\r\n\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\tconsole.log('storeChoosingFile resolveLocalFilesystemUrl error: ', e);\r\n\t\t\t\t\t\tthis.errorHandling.handleFileSystemError(e);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.then((fileEntry) => {\r\n\r\n\r\n\t\t\t\t\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\t\t\t\t\t\tconst destination = DIRECTORY_TREE.subfolders.add;\r\n\r\n\t\t\t\t\t\tthis.file.checkDir(tree.directory, tree.regisafeRootPath + destination)\r\n\t\t\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\t\t\tconsole.log('storeChoosingFile checkDir error: ', e);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t.then((dirEntry) => {\r\n\r\n\t\t\t\t\t\t\t\tconst path = filePath.substring(0, filePath.lastIndexOf('/'));\r\n\t\t\t\t\t\t\t\tconst filename = filePath.substring(filePath.lastIndexOf('/') + 1);\r\n\r\n\t\t\t\t\t\t\t\tthis.file.copyFile(path, filename, tree.directory + tree.regisafeRootPath + destination, filename)\r\n\t\t\t\t\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\t\t\t\t\tconsole.log('storeChoosingFile copyFile error: ', e);\r\n\t\t\t\t\t\t\t\t\t\tthis.errorHandling.handleFileSystemError(e);\r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t.then((copiedFileEntry) => {\r\n\t\t\t\t\t\t\t\t\t\tthis.msgService.sendMessage({\r\n\t\t\t\t\t\t\t\t\t\t\tcontext: 'filesystem:copy',\r\n\t\t\t\t\t\t\t\t\t\t\tentry: copiedFileEntry\r\n\t\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\r\n\t\t\t})\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('storeChoosingFile filePath.resolveNativePath error: ', e);\r\n\t\t\t});\r\n\t}\r\n\r\n\tstoreUint8ArrayAsFile(unit8Array: Uint8Array, filename: string, type: string) {\r\n\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\t\tconst destination = DIRECTORY_TREE.subfolders.add;\r\n\r\n\t\tthis.file.checkDir(tree.directory, tree.regisafeRootPath + destination)\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('storeUint8ArrayAsFile checkDir error: ', e);\r\n\t\t\t})\r\n\t\t\t.then((dirEntry) => {\r\n\r\n\t\t\t\tthis.file.writeFile(tree.directory + tree.regisafeRootPath + destination, filename, unit8Array)\r\n\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\tconsole.log('storeUint8ArrayAsFile -> writeFile -> error: ', e);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.then((fileEntry) => {\r\n\t\t\t\t\t\tthis.msgService.sendMessage({\r\n\t\t\t\t\t\t\tcontext: 'filesystem:copy',\r\n\t\t\t\t\t\t\tentry: fileEntry\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t});\r\n\t}\r\n\r\n\tgetAddedFilesList() {\r\n\t\tconst tree = this.deviceSpecificDirectoryTree();\r\n\t\treturn this.file.listDir(tree.directory + tree.regisafeRootPath, DIRECTORY_TREE.subfolders.add);\r\n\t}\r\n\r\n\tdeleteFile(fileEntry: Entry) {\r\n\t\tconsole.log('deleteFile: ', fileEntry);\r\n\t\tconst filename = this.getFilenameFromPath(fileEntry.nativeURL);\r\n\t\tconst pathname = this.getPathFromFullPath(fileEntry.nativeURL);\r\n\t\tconsole.log('deleteFile: ', filename, pathname);\r\n\t\tthis.file.removeFile(pathname, filename)\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('deleteFile removeFile error: ', e);\r\n\t\t\t})\r\n\t\t\t.then((result) => {\r\n\t\t\t\tconsole.log('removeFile: ', result);\r\n\t\t\t\tthis.msgService.sendMessage({context: 'filesystem:delete', entry: result});\r\n\t\t\t});\r\n\t}\r\n\r\n\tdeleteFiles(fileEntryList: Array) {\r\n\t\tconsole.log('fileEntryList: ', fileEntryList[0]);\r\n\t\tconst filename = this.getFilenameFromPath(fileEntryList[0].nativeURL);\r\n\t\tconst pathname = this.getPathFromFullPath(fileEntryList[0].nativeURL);\r\n\t\tconsole.log('deleteFile: ', filename, pathname);\r\n\t\tthis.file.removeFile(pathname, filename)\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('deleteFile removeFile error: ', e);\r\n\t\t\t})\r\n\t\t\t.then((result) => {\r\n\t\t\t\tconsole.log('removeFile: ', result);\r\n\t\t\t\tfileEntryList.shift();\r\n\t\t\t\tif (fileEntryList.length > 0) {\r\n\t\t\t\t\tthis.deleteFiles(fileEntryList);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.msgService.sendMessage({context: 'filesystem:delete', entry: []});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * extrahiert den Dateinamen aus einer übergebenen URL\r\n\t *\r\n\t * @param path - eine URL zu einer Datei\r\n\t */\r\n\tgetFilenameFromPath(path: string): string {\r\n\t\treturn decodeURI(path.split('\\\\').pop().split('/').pop());\r\n\t}\r\n\r\n\t/**\r\n\t * extrahiert den Pfad ohne Dateinamen aus einer übergebenen URL\r\n\t *\r\n\t * @param path - eine URL zu einer Datei\r\n\t */\r\n\tgetPathFromFullPath(path: string): string {\r\n\t\treturn path.substring(0, path.lastIndexOf('/'));\r\n\t}\r\n\r\n\t/**\r\n\t * speichert eine übergebene Datei (Link) im Cache Ordner\r\n\t *\r\n\t * @param resp - Rückgabewert aus OrgaManagerGetFile\r\n\t */\r\n\tdownloadFileToCacheDir(resp: any) {\r\n\t\tconst fileTransfer: FileTransferObject = this.transfer.create();\r\n\t\tconst cacheDirectory = this.deviceSpecificCacheDirectory();\r\n\r\n\t\tthis.file.createDir(cacheDirectory, CACHE_DOWNLOAD_DIRECTORY, true)\r\n\t\t\t.then((dirEntry) => {\r\n\r\n\t\t\t\tfileTransfer.download(this.configuration.iqapiDomain + resp.binary, dirEntry.nativeURL + resp.fileName, true)\r\n\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\tconsole.log('### downloadFileToCacheDir error ###: ', e);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.then((fileEntry) => {\r\n\t\t\t\t\t\tthis.openFile(fileEntry, 'view');\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n\t\t\t\t\t\t// finally\r\n\t\t\t\t\t});\r\n\r\n\t\t\t})\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('### downloadFileToCacheDir createDir error ###: ', e);\r\n\t\t\t});\r\n\r\n\t}\r\n\r\n\t/**\r\n\t * speichert eine übergebene Datei (Link) in einem eindeutigen Ordner (Ordnername ist die ObjectID des Schriftstückes),\r\n\t * Der Doppelpunkt (:) in der OjectID wird dabei durch ein Minus (-) ersetzt\r\n\t *\r\n\t * @param resp - Rückgabewert aus OrgaManagerGetFile\r\n\t * @param jsondBody - FileObject\r\n\t * @param metaData - DetailObject\r\n\t */\r\n\tdownloadFileToEditDir(resp: any, jsondBody: FileObj, metaData: DetailObject) {\r\n\t\tconst fileTransfer: FileTransferObject = this.transfer.create();\r\n\t\tconst fileDirectory = this.deviceSpecificDirectoryTree();\r\n\t\tconst editDirectory = fileDirectory.directory + fileDirectory.regisafeRootPath + DIRECTORY_TREE.subfolders.edit;\r\n\r\n\t\tthis.file.createDir(editDirectory, this.convertString(jsondBody.objId, /:/g, '-'), true)\r\n\t\t\t.then((dirEntry) => {\r\n\t\t\t\tfileTransfer.download(this.configuration.iqapiDomain + resp.binary, dirEntry.nativeURL + resp.fileName, true)\r\n\t\t\t\t\t.catch((e) => {\r\n\t\t\t\t\t\tconsole.log('### downloadFileDoEditDir error ###: ', e);\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.then((fileEntry) => {\r\n\t\t\t\t\t\tthis.openFile(fileEntry, 'edit');\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.finally(() => {\r\n\t\t\t\t\t\t// finally\r\n\t\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('### downloadFileDoEditDir createDir error ###: ', e);\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * speichert Metadaten für alle Dateien die zum barbeiten heruntergeladen wurden\r\n\t *\r\n\t * @param key - ObjectID des Schriftstücks\r\n\t * @param value - Wert aus dem Feld TEXT des Schriftstückes\r\n\t */\r\n\tsetMetaDataForEditDir(key: string, value: string) {\r\n\t\tconst newData: any = {\r\n\t\t\tobjid: key,\r\n\t\t\ttext: value\r\n\t\t};\r\n\r\n\t\tthis.storage.get(APP_STORAGE.user.edit).then(\r\n\t\t\t(data: Array) => {\r\n\t\t\t\tdata.push(newData);\r\n\t\t\t\tconst unique = this.getUniqueListBy(data, 'objid');\r\n\t\t\t\tthis.storage.set(APP_STORAGE.user.edit, unique);\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * entfernt Duplikate aus einem Array von Objekten anhand eines übergebenen Schlüssels\r\n\t * Der Schlüssel ist die ObjectId des Schrifstückes\r\n\t *\r\n\t * @param arr - Array of Objects\r\n\t * @param key - gesuchter Schlüssel\r\n\t */\r\n\tgetUniqueListBy(arr: Array, key: string): any {\r\n\t\tconst uniq = {};\r\n\t\tconst arrFiltered = arr.filter(obj => !uniq[obj[key]] && (uniq[obj[key]] = true));\r\n\t\treturn arrFiltered;\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * öffnet eine Datei als Vorschau bzw. zum bearbeiten\r\n\t *\r\n\t * @param entry - Dateiobject\r\n\t * @param action - Welche Aktion soll ausgeführt werden\r\n\t */\r\n\topenFile(entry: FileEntry, action: FileHandlingAction) {\r\n\r\n\t\tconst fileEntry = entry as FileEntry;\r\n\r\n\t\tswitch (action) {\r\n\t\t\tcase 'view':\r\n\t\t\t\tfileEntry.file((file) => {\r\n\t\t\t\t\tthis.fileOpener.open(entry.nativeURL, file.type);\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase 'edit':\r\n\t\t\t\tconst fileOpenercomundus = cordova.plugins.fileOpener2comundus;\r\n\t\t\t\tfileEntry.file((file) => {\r\n\t\t\t\t\tfileOpenercomundus.showOpenWithDialog(entry.nativeURL, file.type);\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * ersetzt einen gesuchten Wert in einem String durch einen anderen\r\n\t *\r\n\t * @param str - übergebener String\r\n\t * @param searchvalue - was wird gesucht\r\n\t * @param newvalue - was wird eingesetzt\r\n\t */\r\n\tconvertString(str, searchvalue, newvalue) {\r\n\t\tconst convertedString = str.replace(searchvalue, newvalue);\r\n\t\treturn convertedString;\r\n\t}\r\n}\r\n\r\n\r\n\r\n\r\n","import {Injectable} from '@angular/core';\r\nimport {HttpClient} from '@angular/common/http';\r\nimport {forkJoin, Observable, of} from 'rxjs';\r\nimport {timeout} from 'rxjs/operators';\r\nimport {IQAPI_HTTP_REQUEST_TIMEOUT} from '../../../environments/environment';\r\nimport {\r\n\tInParamFavorites,\r\n\tFileInfoObj,\r\n\tFileObj,\r\n\tGetConditionsObj,\r\n\tSearchObjectsExObj,\r\n\tConfigurationObject,\r\n\tFilesGetResponseObj,\r\n\tLockObject,\r\n\tUnlockObject,\r\n\tCheckRelationsObject,\r\n\tSearchRelationsObject, SearchRelationsExObject, SearchQueryParamsSearchFieldsOnly\r\n} from '../../interfaces/interfaces.regisafe';\r\nimport {ToastController} from '@ionic/angular';\r\nimport {FileTransferObject, FileUploadOptions, FileTransfer} from '@awesome-cordova-plugins/file-transfer/ngx';\r\nimport {MessagesService} from '../messages/messages.service';\r\nimport {FileSystemService} from '../filesystem/filesystem.service';\r\nimport {catchError} from 'rxjs/Operators';\r\nimport {AppConfig} from '../../app.config';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class IQApiService {\r\n\r\n\tpublic configuration: ConfigurationObject;\r\n\r\n\ttoast: HTMLIonToastElement;\r\n\talert: HTMLIonAlertElement;\r\n\r\n\tconstructor(private httpClient: HttpClient,\r\n\t\t\t\tpublic toastCtrl: ToastController,\r\n\t\t\t\tprivate transfer: FileTransfer,\r\n\t\t\t\tprivate msgService: MessagesService,\r\n\t\t\t\tprivate fileSytemService: FileSystemService,\r\n\t\t\t\tpublic appConfig: AppConfig) {\r\n\t\tthis.configuration = this.appConfig.getConfig();\r\n\t}\r\n\r\n\t/**\r\n\t * orgaManagerGetConditions()\r\n\t *\r\n\t * Liefert zahlreiche Informationen zur den Rahmenbedingungen und der Konfiguration des OrgaManager-Moduls, ergänzt\r\n\t * um weitere system- und benutzerbezogene Informationen.\r\n\t *\r\n\t * @param body\r\n\t */\r\n\torgaManagerGetConditions(body: GetConditionsObj): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.GetConditions';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json', reportProgress: true, observe: 'response'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * orgaManagerSearchObjectsEx()\r\n\t *\r\n\t * Führt am Server eine Suche nach Objekten der Organisationsstruktur durch, sortiert die Ergebnisse und liefert die\r\n\t * Datensätze aller oder eines Teils der gefundenen Objekte zurück. Das Suchergebnis wird am IQ-Server gecached, so\r\n\t * dass ein weiterer Aufruf von SearchObjectsEx mit denselben Suchkriterien innerhalb derselben Session keine\r\n\t * erneute Datenbanksuche verursacht. Dadurch ist es möglich, dass z.B. erst die ersten 20 Treffer und später die\r\n\t * nächsten 20 Treffer usw. abgefragt werden. Zudem verhindert der Cache, dass zweimal dieselbe Suche gleichzeitig\r\n\t * abläuft: in diesem Fall würde der zweite Aufruf von SearchObjectsEx warten, bis die erste Suche abgeschlossen\r\n\t * ist. Suchergebnisse im Cache werden verworfen, wenn diese ein gewisses Alter erreicht haben oder eine gewisse\r\n\t * Maximalzahl gecachter Suchen erreicht wurde. Zudem werden Suchergebnisse automatisch aus dem Cache entfernt, wenn\r\n\t * in der selben Session Objekte neu angelegt, geändert oder gelöscht werden, sowie wenn in einer beliebigen Session\r\n\t * ein Objekt geändert oder gelöscht wird, das sich in der Trefferliste des Cache befindet.\r\n\t *\r\n\t * @param body\r\n\t */\r\n\torgaManagerSearchObjectsEx(body: SearchObjectsExObj): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.SearchObjectsEx';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerReadObject(body: any): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.ReadObject';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerReadObjects(body: any): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.ReadObjects';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerWriteObject(fileEntry, type, parameter) {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.WriteObject';\r\n\t\tconst fileTransfer: FileTransferObject = this.transfer.create();\r\n\t\tconst transferOption: FileUploadOptions = {\r\n\t\t\tfileKey: 'binary',\r\n\t\t\tfileName: fileEntry.name,\r\n\t\t\tmimeType: type,\r\n\t\t\thttpMethod: 'POST',\r\n\t\t\tchunkedMode: false,\r\n\t\t\tparams: parameter\r\n\t\t};\r\n\r\n\t\tfileTransfer.onProgress((event) => {\r\n\t\t\tconsole.log('orgaManagerWriteObjectAdd.onProgress: ', event.loaded);\r\n\t\t});\r\n\r\n\t\tfileTransfer.upload(fileEntry.uri, url, transferOption, true)\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('transferObj error: ', e);\r\n\t\t\t})\r\n\t\t\t.then((result) => {\r\n\t\t\t\tconsole.log('transferObj result: ', result);\r\n\t\t\t});\r\n\t}\r\n\r\n\torgaManagerHandFile(fileEntry, token, type) {\r\n\r\n\t\tconst fileTransfer: FileTransferObject = this.transfer.create();\r\n\r\n\t\tconst transferOption: FileUploadOptions = {\r\n\t\t\tfileKey: 'binary',\r\n\t\t\tfileName: fileEntry.name,\r\n\t\t\tmimeType: type,\r\n\t\t\thttpMethod: 'POST',\r\n\t\t\tchunkedMode: false,\r\n\t\t\tparams: {\r\n\t\t\t\tapiID: this.configuration.iqapiAppId,\r\n\t\t\t\tsessionToken: token,\r\n\t\t\t\tfileName: fileEntry.name,\r\n\t\t\t\tdontOpenDlg: 0\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tconsole.log('### OrgaManagerHandFile fileTransfer: ', fileTransfer);\r\n\t\t// console.log('### OrgaManagerHandFile parameterHandFile: ', parameterHandFile);\r\n\r\n\t\tfileTransfer.onProgress((event) => {\r\n\t\t\tconsole.log('transferObj.onProgress: ', event.loaded);\r\n\t\t\t// this.toast.message = String(event.loaded);\r\n\t\t});\r\n\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.HandFile';\r\n\r\n\t\tfileTransfer.upload(fileEntry.uri, url, transferOption, true)\r\n\t\t\t.catch((e) => {\r\n\t\t\t\tconsole.log('transferObj error: ', e);\r\n\t\t\t\t// this.msgService.sendMessage({context: 'api:upload:handfile', file: fileEntry.name, upload: false});\r\n\t\t\t\t// this.toast.dismiss();\r\n\t\t\t})\r\n\t\t\t.then((result) => {\r\n\t\t\t\tconsole.log('transferObj result: ', result);\r\n\t\t\t\t// this.msgService.sendMessage({context: 'api:upload:handfile', file: fileEntry.name, upload: true});\r\n\t\t\t\t// this.toast.dismiss();\r\n\t\t\t\t// this.fileSytemService.deleteFile(fileEntry);\r\n\t\t\t});\r\n\t}\r\n\r\n\torgaManagerAddObject(body): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.WriteObject';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerGetFileInfo(body: FileInfoObj): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.GetFileInfo';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerGetFile(body: FileObj) {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.GetFile';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\tOrgaManagerGetFile_Get(token) {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.GetFile';\r\n\t\tconst params = '?apiID=' + this.configuration.iqapiEndpoint + '&sessionToken=' + token + '&osId=Schriftgutverwaltung&objID=2110:220896&fileName=tet.pdf'\r\n\t\treturn this.httpClient\r\n\t\t\t.get(url + params)\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * orgaManagerGetFavorites()\r\n\t *\r\n\t * Holt die Favoriten der übergebenen Oragstrukturen über die IQAPI. Die OrgaStrukturen\r\n\t * werden als Array (Liste) übergeben.\r\n\t * z.B. ['Aktenplanverwaltung', 'VorgangsVerwaltung', 'Sitzungsverwaltung']\r\n\t * Das Ergebnis ist entsprechend dem übergebenen Array sortiert.\r\n\t *\r\n\t * @param token\r\n\t * @param orgaStructs\r\n\t */\r\n\torgaManagerGetFavorites(token: string, orgaStructs: Array): Observable {\r\n\t\tconst favoritesRoutes = [];\r\n\t\torgaStructs.forEach((structure) => {\r\n\t\t\tconst body: InParamFavorites = {\r\n\t\t\t\tapiID: this.configuration.iqapiAppId,\r\n\t\t\t\tosId: structure,\r\n\t\t\t\tsessionToken: token\r\n\t\t\t};\r\n\t\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.GetFavorites';\r\n\t\t\tfavoritesRoutes.push(this.httpClient.post(url, body, {headers: {}, responseType: 'json'}));\r\n\t\t});\r\n\r\n\t\treturn forkJoin(favoritesRoutes).pipe(\r\n\t\t\tcatchError(error => of(error))\r\n\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * orgaManagerGlobalSearchEx()\r\n\t *\r\n\t * Führt eine Suche über alle vorhandenen (bzw. übergebenen) Orgastrukturen durch.\r\n\t * Gesucht wird in den in 'searchFieldObj' übergebenen Feldern. Es wird ein Array\r\n\t * von Objekten zurückgegeben unabhängig, ob etwas gefunden wurde oder nicht.\r\n\t * Gab es einen Treffer, enthält das entsprechenden Object einen Schlüssel 'objDatasets'\r\n\t * mit dem Ergebnis der Suche oder, wenn für die OrgaStruktur nichts gefunden wurde,\r\n\t * folgenden Eintrag: 'totalCount: 0'.\r\n\t *\r\n\t * @param token\r\n\t * @param orgaStructs\r\n\t * @param searchFieldObj\r\n\t */\r\n\torgaManagerSearchExGlobal(token: string, orgaStructs: Array, searchFieldObj: any): Observable {\r\n\t\tconst routes = [];\r\n\t\torgaStructs.forEach((structure: string) => {\r\n\t\t\tconst body: SearchQueryParamsSearchFieldsOnly = {\r\n\t\t\t\tapiID: this.configuration.iqapiAppId,\r\n\t\t\t\tosId: structure,\r\n\t\t\t\tsessionToken: token,\r\n\t\t\t\tsearchFields: searchFieldObj,\r\n\t\t\t\taddosId: 1\r\n\t\t\t};\r\n\r\n\t\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.SearchObjectsEx';\r\n\t\t\troutes.push(this.httpClient.post(url, body, {headers: {}, responseType: 'json'}));\r\n\t\t});\r\n\r\n\t\treturn forkJoin(routes).pipe(\r\n\t\t\tcatchError((error) => of(error))\r\n\t\t);\r\n\t}\r\n\r\n\torgaManagerGetSavedSearchCriteriaList(token: string, orgaStructs: Array): Observable {\r\n\t\tconst savedSearchCriteriaList = [];\r\n\t\torgaStructs.forEach((structure) => {\r\n\t\t\tconst body: InParamFavorites = {\r\n\t\t\t\tapiID: this.configuration.iqapiAppId,\r\n\t\t\t\tosId: structure,\r\n\t\t\t\tsessionToken: token\r\n\t\t\t};\r\n\t\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.GetSavedSearchCriteriaList';\r\n\t\t\tsavedSearchCriteriaList.push(this.httpClient.post(url, body, {headers: {}, responseType: 'json'}));\r\n\t\t});\r\n\r\n\t\treturn forkJoin(savedSearchCriteriaList).pipe(\r\n\t\t\tcatchError(error => of(error))\r\n\t\t);\r\n\t}\r\n\r\n\r\n\tasync uploadMessage() {\r\n\t\tthis.toast = await this.toastCtrl.create({\r\n\t\t\tmessage: 'Upload'\r\n\t\t});\r\n\t\tthis.toast.present();\r\n\t}\r\n\r\n\t// field definition\r\n\tgetFields(structure: string) {\r\n\r\n\t\tlet fields: any = [];\r\n\r\n\t\tswitch (structure.toLowerCase()) {\r\n\r\n\t\t\tcase 'aktenplanverwaltung':\r\n\t\t\t\tfields = ['Aktenzeichen', 'Vorgangskennung', 'Text', 'SubVorgangsverwaltung', 'SubSchriftgutverwaltung',\r\n\t\t\t\t\t'SubAktenplanverwaltung', 'ArtID', 'Fussnote', 'Haushaltsstelle', 'Hinweise', 'HistAktenzeichen',\r\n\t\t\t\t\t'Produktkennung', 'Schlagworte', 'Zustaendigkeit', '_SYMBFARBE', '_FARBE', 'ZUGRIFF', '_ObjId'];\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase 'vorgangsverwaltung':\r\n\t\t\t\tfields = ['Aktenzeichen', 'Vorgangskennung', '_ObjId', 'Text', 'SubSchriftgutverwaltung',\r\n\t\t\t\t\t'SubVorgangsverwaltung', 'BeginnDatum', 'EndeDatum', 'Adresskennung', 'ArtID', 'AufbArchiv',\r\n\t\t\t\t\t'AufbFrist', 'AufbOrt', 'AufbRegistratur', 'AufbVernichten', 'Barcode', 'BeginnDatum', 'EndeDatum',\r\n\t\t\t\t\t'Hinweise', 'Schlagworte', 'Status', 'Zustaendigkeit', '_VERWEIS_AKTENPLAN',\r\n\t\t\t\t\t'_SYMBFARBE', '_FARBE'];\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase 'schriftgutverwaltung':\r\n\t\t\t\tfields = ['Aktenzeichen', 'Vorgangskennung', '_ObjId', 'Text', 'SubVorgangsverwaltung',\r\n\t\t\t\t\t'SubSchriftgutverwaltung', 'Adresskennung', 'Datum', 'ADatum', 'EndeDatum', 'ArtID', 'AufbArchiv',\r\n\t\t\t\t\t'AufbFrist', 'AufbOrt', 'AufbRegistratur', 'AufbVernichten', 'Barcode', 'Datum', 'Hinweise',\r\n\t\t\t\t\t'Internet', 'InternetBis', 'InternetFreigabe', 'Zugriff', 'InternetVon', 'Kategorie', 'Kennung',\r\n\t\t\t\t\t'Postausgang', 'PostDatum', 'Posteingang', 'PostKennung', 'Sachbearbeiter', 'Verwaltungskennung',\r\n\t\t\t\t\t'Grundstückskennung', 'SachbErsteller', 'SachbUnterzeichner', 'Schlagworte',\r\n\t\t\t\t\t'Schriftstückidentifikation', 'Status', 'Verknüpfungsart', '_VERWEIS_AKTENPLAN',\r\n\t\t\t\t\t'_SYMBFARBE', '_FARBE'];\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase 'adressverwaltung':\r\n\t\t\t\tfields = ['Adresskennung', 'Vorgangskennung', 'SubVorgangsverwaltung', 'SubSchriftgutverwaltung',\r\n\t\t\t\t\t'SubAdressverwaltung', 'SubVerteilerverwaltung', 'Strasse', 'StrPLZ', 'StrOrt', 'StrLand',\r\n\t\t\t\t\t'TelefonPrivat', 'TelefonGesch', 'TelefonMobil', 'MailPrivat', 'MailGesch', 'WebAdresse',\r\n\t\t\t\t\t'FaxGesch', 'Abteilung', 'Anrede', 'Vorname', 'Nachname', 'Anrede2', 'Nachname2', 'Vorname2',\r\n\t\t\t\t\t'PartnerAnrede', 'GebDatum', 'GebLand', 'GebName', 'GebOrt', 'Geschlecht', 'Hinweise', 'Nachtitel',\r\n\t\t\t\t\t'Nachtitel2', 'Namenszusatz', 'Namenszusatz2', 'Ortsteil', 'Postfach', 'Schlagworte',\r\n\t\t\t\t\t'Staatsangehoerigkeit', 'StrInfoPrivat', 'StrassePrivat', 'StrPLZPrivat', 'StrOrtPrivat',\r\n\t\t\t\t\t'FaxPrivat', 'ArtId', 'MailAp', 'FaxAp', 'TelefonAp', 'MobilAp', '_ObjId', '_SYMBFARBE', '_FARBE',\r\n\t\t\t\t\t'Text', 'ArtID', 'Kategorien', 'Name1'];\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase 'sitzungsverwaltung':\r\n\t\t\t\tfields = ['Text', 'Artid', 'Sitzungsdatum', 'Sitzungsstatus', 'Sitzungsgremium', 'Sitzungsraum',\r\n\t\t\t\t\t'Sitzungsuhrzeitvon', 'Sitzungsuhrzeitbis', 'Sitzung_Tops', 'Zustaendigkeit', 'Sitzungsbezeichnung',\r\n\t\t\t\t\t'Sitzungskennung', 'Aktenzeichen', 'Terminobjid', 'Besondbezeichnung', 'To_Abgeschlossen',\r\n\t\t\t\t\t'Sitzungsnummer', 'Subschriftgutverwaltung', '_ObjId', '_SYMBFARBE', '_FARBE'];\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tdefault:\r\n\t\t\t\tfields = ['Text', 'SubVorgangsverwaltung', 'SubSchriftgutverwaltung', 'SubAktenplanverwaltung'];\r\n\t\t}\r\n\r\n\t\treturn fields;\r\n\r\n\t}\r\n\r\n\tgetBinary(path: string): Observable {\r\n\t\treturn this.httpClient\r\n\t\t\t.get(this.configuration.iqapiDomain + path, {responseType: 'arraybuffer'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\t// Dokumenten-Sperren\r\n\torgaManagerLockObject(body: LockObject): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.LockObject';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerUnlockObject(body: UnlockObject): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.UnlockObject';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerCheckRelations(body: CheckRelationsObject): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.CheckRelations';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerSearchRelations(body: SearchRelationsObject): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.SearchRelations';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\torgaManagerSearchRelationsEx(body: SearchRelationsExObject): Observable {\r\n\t\tconst url = this.configuration.iqapiEndpoint + '/OrgaManager.SearchRelationsEx';\r\n\t\treturn this.httpClient\r\n\t\t\t.post(url, body, {headers: {}, responseType: 'json'})\r\n\t\t\t.pipe(\r\n\t\t\t\ttimeout(IQAPI_HTTP_REQUEST_TIMEOUT)\r\n\t\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * getIconsInAssetsFolder()\r\n\t *\r\n\t * Durchsucht den angebenen Ordner nach Icons und übergibt das Ergebnis\r\n\t * als Promise\r\n\t *\r\n\t * @param urls\r\n\t */\r\n\tgetIconsInAssetsFolder(urls: Array, key: string): Promise {\r\n\t\tconsole.log('getIconsInAssetsFolder: ', urls);\r\n\t\tconst routes = [];\r\n\t\turls.forEach((url) => {\r\n\t\t\troutes.push('assets/icons/regisafe/' + url[key] + '.svg');\r\n\t\t});\r\n\t\treturn Promise.all(routes.map(route => fetch(route)));\r\n\t}\r\n\r\n\r\n\t// /**\r\n\t// * expandResultObject()\r\n\t// *\r\n\t// * ergänzt das Ergebnis der IQAPI-Anfrage (orgaManager.GetSavedSearchCriteriaList) um die Felder\r\n\t// * osStruct, osStructName und osSortIndex.\r\n\t// * Übergeben wird zusätzlich ein Schlüssel aus dem erwarteten Ergebnis, ein Vergleichs-Operator und der\r\n\t// * Wert auf den mitteles der Mthode conditioner() geprüft werden soll\r\n\t// *\r\n\t// * @param result\r\n\t// * @param structures\r\n\t// * @param keyinresult\r\n\t// * @param operator\r\n\t// * @param value\r\n\t// */\r\n\t// expandResultObject(result, structures, keyinresult, operator, value): Array {\r\n\t// \tconst resultObj = result;\r\n\t// \tconst tempArr: Array = [];\r\n\t// \tObject.keys(resultObj).forEach((key, index) => {\r\n\t// \t\tconst osStructName = this.storageService.getOsStructNameFromConditionsSync(structures[index]);\r\n\t// \t\tconst osSortIndex = this.storageService.getOsSortIndexFromConditionsSync(structures[index]);\r\n\t// \t\tconsole.log('result[key][keyinresult]: ', result[key][keyinresult]);\r\n\t//\r\n\t// \t\tif (this.conditioner(result[key][keyinresult], operator, value)) {\r\n\t// \t\t\tresult[key].osStruct = structures[index];\r\n\t// \t\t\tresult[key].osStructName = osStructName;\r\n\t// \t\t\tresult[key].osSortIndex = osSortIndex;\r\n\t// \t\t\ttempArr.push(result[key]);\r\n\t// \t\t}\r\n\t// \t});\r\n\t//\r\n\t// \tconst sortedTempArr = tempArr.sort((a, b) => {\r\n\t// \t\tif (a.osSortIndex < b.osSortIndex) {\r\n\t// \t\t\treturn -1;\r\n\t// \t\t}\r\n\t// \t\tif (a.osSortIndex > b.osSortIndex) {\r\n\t// \t\t\treturn 1;\r\n\t// \t\t}\r\n\t// \t\treturn 0;\r\n\t// \t});\r\n\t// \treturn sortedTempArr;\r\n\t// }\r\n\t//\r\n\t// /**\r\n\t// * conditioner()\r\n\t// *\r\n\t// * Vergleicht zwei Werte mit dem übergebenen Operator und gibt das Ergebnis als Boolean zurück\r\n\t// *\r\n\t// * @param value1\r\n\t// * @param value2\r\n\t// * @param operator\r\n\t// */\r\n\t// conditioner(value1: any, value2: any, operator: string): boolean {\r\n\t// \tlet condition: boolean;\r\n\t// \tif (operator === '!==') {\r\n\t// \t\tcondition = value1 !== value2;\r\n\t// \t} else if (operator === '>') {\r\n\t// \t\tcondition = value1 > value2;\r\n\t// \t} else {\r\n\t// \t\tcondition = false;\r\n\t// \t}\r\n\t// \treturn condition;\r\n\t// }\r\n\r\n}\r\n"],"names":[],"sourceRoot":"webpack:///"}