/// import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; import { environment } from './environments/environment'; import { DirGroup, DirUser, User, UserRep } from './app/models/user-management.api.models'; export function getBaseUrl() { return document.getElementsByTagName('base')[0].href; } export function getUserManagerUrl() { return document.getElementsByTagName("user-manager-api")[0].getAttribute("href"); } export function getUserUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("user-route")}`; } export function getGroupUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("group-route")}`; } export function getModuleUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("module-route")}`; } export function getModuleOfUserUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("module-of-user-route")}`; } export function getGroupOfUserUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("group-of-user-route")}`; } export function getUserRepUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("user-representation-route")}`; } export function getDirGroupUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("dir-group-route")}`; } export function getDirUserUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("dir-user-route")}`; } export function getDirUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("dir-route")}`; } export function getLogInUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("login-route")}`; } export function getLogOutUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("logout-route")}`; } export function getLoginCheckUrl() { return `${getUserManagerUrl()}${document.getElementsByTagName("user-manager-api")[0].getAttribute("login-check-route")}`; } var columnNames = { user: [ { header: 'Benutzername', field: 'username' }, { header: 'Vorname', field: 'prename' }, { header: 'Name', field: 'name' }, { header: 'E-email', field: 'email' }], group: { complete: [ { header: "Gruppe", field: "name" }, { header: "Kommentar", field: "comment" } ], representative: [ { header: "Repräsentation", field: "name" } ], right: [ { header: "Richtiger", field: "name" } ] }, dirGroup: [ { header: "SAM-Account-Name", field: (dirGroup: DirGroup) => dirGroup?.samaccountname[0] } ], dirUser: [ { header: 'Benutzername', field: (dirUser: DirUser) => dirUser?.samaccountname?.[0] ?? "" }, { header: 'Vorname', field: (dirUser: DirUser) => dirUser?.givenname?.[0] ?? "" }, { header: 'Name', field: (dirUser: DirUser) => dirUser?.sn?.[0] ?? "" }, { header: 'E-email', field: (dirUser: DirUser) => dirUser?.mail?.[0] ?? "" } ], module: [ { header: "Produkt", field: "name" }, { header: "Kurzname", field: "shortName" } ], groupOfUser: [ { header: "Benutzername", field: (gou: any) => gou.user.username }, { header: "Gruppen", field: (gou: any) => gou.group.name }, ], userRep: [ { header: "Repr. Gruppen", field: (ur: UserRep) => ur.repGroup?.name }, { header: "Rechte Gruppen", field: (ur: UserRep) => ur.rightGroup?.name }, { header: "Repr. Benutzer", field: (ur: UserRep) => ur.repUser?.username }, ] } const providers = [ { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }, { provide: 'USER_MANAGER_URL', useFactory: getUserManagerUrl, deps: [] }, { provide: 'USER_URL', useFactory: getUserUrl, deps: [] }, { provide: 'MODULE_URL', useFactory: getModuleUrl, deps: [] }, { provide: 'GROUP_URL', useFactory: getGroupUrl, deps: [] }, { provide: 'MODULE_OF_USER_URL', useFactory: getModuleOfUserUrl, deps: [] }, { provide: 'GROUP_OF_USER_URL', useFactory: getGroupOfUserUrl, deps: [] }, { provide: 'USER_REP_URL', useFactory: getUserRepUrl, deps: [] }, { provide: 'DIR_GROUP_URL', useFactory: getDirGroupUrl, deps: [] }, { provide: 'DIR_USER_URL', useFactory: getDirUserUrl, deps: [] }, { provide: 'DIR_URL', useFactory: getDirUserUrl, deps: [] }, { provide: 'LOGIN_URL', useFactory: getLogInUrl, deps: [] }, { provide: 'LOGOUT_URL', useFactory: getLogOutUrl, deps: [] }, { provide: 'LOGIN_CHECK_URL', useFactory: getLoginCheckUrl, deps: [] }, { provide: 'USER_TABLE_COLUMNS', useFactory: () => columnNames.user, deps: [] }, { provide: 'GROUP_COMPLETE_TABLE_COLUMNS', useFactory: () => columnNames.group.complete, deps: [] }, { provide: 'GROUP_RIGHT_TABLE_COLUMNS', useFactory: () => columnNames.group.right, deps: [] }, { provide: 'GROUP_REP_TABLE_COLUMNS', useFactory: () => columnNames.group.representative, deps: [] }, { provide: 'MODULE_TABLE_COLUMNS', useFactory: () => columnNames.module, deps: [] }, { provide: 'GROUP_USER_TABLE_COLUMNS', useFactory: () => columnNames.groupOfUser, deps: [] }, { provide: 'USER_REP_TABLE_COLUMNS', useFactory: () => columnNames.userRep, deps: [] }, { provide: 'DIR_GROUP_TABLE_COLUMNS', useFactory: () => columnNames.dirGroup, deps: [] }, { provide: 'DIR_USER_TABLE_COLUMNS', useFactory: () => columnNames.dirUser, deps: [] } ]; if (environment.production) { enableProdMode(); } platformBrowserDynamic(providers).bootstrapModule(AppModule) .catch(err => {});