{"version":3,"file":"main.js","mappings":"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","sources":["./$_lazy_route_resources|lazy|groupOptions: {}|namespace object","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/aree/aree.component.ts","./src/app/common/abstract-service.ts","./src/app/common/search.ts","./src/app/componenti-generici/componenti-generici.component.ts","./src/app/components/banners/banners.component.ts","./src/app/components/pages-default/pages-default.component.ts","./src/app/components/pages-full-width/pages-full-width.component.ts","./src/app/components/pages-titoli-sri/pages-titoli-sri.component.ts","./src/app/components/pages-with-tables/pages-with-tables.component.ts","./src/app/components/pages-with-tabs-time/pages-with-tabs-time.component.ts","./src/app/components/pages-with-tabs-without-date/pages-with-tabs-without-date.component.ts","./src/app/components/pages-with-tabs/pages-with-tabs.component.ts","./src/app/components/pages-with-uploads/pages-with-uploads.component.ts","./src/app/components/picture-gallery/picture-gallery.component.ts","./src/app/constants/constants.ts","./src/app/constants/functions.ts","./src/app/contatti/contatti.component.ts","./src/app/corporate/corporate.component.ts","./src/app/disclaimer/disclaimer.component.ts","./src/app/formrequest/formrequest.component.ts","./src/app/gruppo/gruppo.component.ts","./src/app/homepage/homepage.component.ts","./src/app/investor/investor.component.ts","./src/app/model/allegato.ts","./src/app/model/attivita.ts","./src/app/model/blog.ts","./src/app/model/contenuto-generico.ts","./src/app/model/documento.ts","./src/app/model/formrequest.ts","./src/app/model/multilingua.ts","./src/app/model/news.ts","./src/app/model/sede.ts","./src/app/model/servizio.ts","./src/app/model/storia.ts","./src/app/not-found/not-found.component.ts","./src/app/pipe/order.pipe.ts","./src/app/pipe/safe.pipe.ts","./src/app/service/allegato.service.ts","./src/app/service/attivita.service.ts","./src/app/service/blog.service.ts","./src/app/service/contenuto-generico.service.ts","./src/app/service/documento.service.ts","./src/app/service/formrequest.service.ts","./src/app/service/guard/menu.service.guard.ts","./src/app/service/menu.service.ts","./src/app/service/multilingua.service.ts","./src/app/service/news.service.ts","./src/app/service/quotazione.service.ts","./src/app/service/sede.service.ts","./src/app/service/seo.service.ts","./src/app/service/servizio.service.ts","./src/app/service/storia.service.ts","./src/app/servizi-mondo/servizi-mondo.component.ts","./src/app/shared/manageErrorCode.ts","./src/app/shared/ngx-spinner/ngx-spinner.component.ts","./src/app/shared/ngx-spinner/ngx-spinner.enum.ts","./src/app/societa-trasparente/societa-trasparente.component.ts","./src/app/sostenibilita/sostenibilita.component.ts","./src/app/storia/storia.component.ts","./src/environments/environment.ts","./src/main.ts","./src/app/app.component.html","./src/app/aree/aree.component.html","./src/app/componenti-generici/componenti-generici.component.html","./src/app/components/banners/banners.component.html","./src/app/components/pages-default/pages-default.component.html","./src/app/components/pages-full-width/pages-full-width.component.html","./src/app/components/pages-titoli-sri/pages-titoli-sri.component.html","./src/app/components/pages-with-tables/pages-with-tables.component.html","./src/app/components/pages-with-tabs-time/pages-with-tabs-time.component.html","./src/app/components/pages-with-tabs-without-date/pages-with-tabs-without-date.component.html","./src/app/components/pages-with-tabs/pages-with-tabs.component.html","./src/app/components/pages-with-uploads/pages-with-uploads.component.html","./src/app/components/picture-gallery/picture-gallery.component.html","./src/app/contatti/contatti.component.html","./src/app/corporate/corporate.component.html","./src/app/disclaimer/disclaimer.component.html","./src/app/formrequest/formrequest.component.html","./src/app/gruppo/gruppo.component.html","./src/app/homepage/homepage.component.html","./src/app/investor/investor.component.html","./src/app/not-found/not-found.component.html","./src/app/servizi-mondo/servizi-mondo.component.html","./src/app/shared/ngx-spinner/ngx-spinner.component.html","./src/app/societa-trasparente/societa-trasparente.component.html","./src/app/sostenibilita/sostenibilita.component.html","./src/app/storia/storia.component.html"],"sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 98255;\nmodule.exports = webpackEmptyAsyncContext;","import { Component, DoCheck, OnDestroy, OnInit } from \"@angular/core\";\nimport { Search } from \"./common/search\";\nimport { Multilingua } from \"./model/multilingua\";\nimport { MultilinguaService } from \"./service/multilingua.service\";\nimport { Router } from \"@angular/router\";\nimport { Location } from \"@angular/common\";\nimport { concatMap, map } from \"rxjs/operators\";\nimport { from, Subscription } from \"rxjs\"; // RxJS 6 syntax\nimport { MenuService } from \"./service/menu.service\";\nimport {\n MENU_PRIMARY_ENG,\n MENU_PRIMARY_ITA,\n MENU_PRIMARY_PT,\n MENU_SECONDARY_ENG,\n MENU_SECONDARY_ITA,\n MENU_SECONDARY_PT,\n MENU_BOTTOM_PRIMARY_ITA,\n MENU_BOTTOM_SECONDARY_ITA,\n MENU_BOTTOM_PRIMARY_ENG,\n MENU_BOTTOM_SECONDARY_ENG,\n MENU_BOTTOM_PRIMARY_PT,\n MENU_BOTTOM_SECONDARY_PT,\n} from \"./constants/constants\";\nimport { Quotazione } from \"./model/quotazione.model\";\nimport { QuotazioneService } from \"./service/quotazione.service\";\nimport { SeoService } from \"./service/seo.service\";\nimport {\n NgcCookieConsentService,\n NgcInitializeEvent,\n NgcNoCookieLawEvent,\n NgcStatusChangeEvent,\n} from \"ngx-cookieconsent\";\n\n//declare var _iub: any;\n\n@Component({\n selector: \"app-root\",\n templateUrl: \"./app.component.html\",\n styleUrls: [\"./app.component.css\"],\n})\nexport class AppComponent implements OnInit, OnDestroy, DoCheck {\n // keep refs to subscriptions to be able to unsubscribe later\n private popupOpenSubscription: Subscription;\n private popupCloseSubscription: Subscription;\n private initializeSubscription: Subscription;\n private statusChangeSubscription: Subscription;\n private revokeChoiceSubscription: Subscription;\n private noCookieLawSubscription: Subscription;\n\n public year: number = new Date().getFullYear();\n public showSidebar = false;\n public display = false;\n path = \"\";\n alternativePath = \"\";\n\n alternativesLang = [\"IT\", \"EN\"];\n\n alternativesMapPath: string;\n alternativesMapUnchecked = {};\n alternativesMap = {};\n\n menuSecondary: any[];\n menuPrimary: any[];\n menuSecondaryBottom: any[];\n menuPrimaryBottom: any[];\n\n menuLanguage: any[];\n\n menuPrimaryIta = MENU_PRIMARY_ITA;\n menuSecondaryIta = MENU_SECONDARY_ITA;\n menuPrimaryBottomIta = MENU_BOTTOM_PRIMARY_ITA;\n menuSecondaryBottomIta = MENU_BOTTOM_SECONDARY_ITA;\n menuPrimaryEng = MENU_PRIMARY_ENG;\n menuSecondaryEng = MENU_SECONDARY_ENG;\n menuPrimaryBottomEng = MENU_BOTTOM_PRIMARY_ENG;\n menuSecondaryBottomEng = MENU_BOTTOM_SECONDARY_ENG;\n\n menuPrimaryPt = MENU_PRIMARY_PT;\n menuSecondaryPt = MENU_SECONDARY_PT;\n menuPrimaryBottomPt = MENU_BOTTOM_PRIMARY_PT;\n menuSecondaryBottomPt = MENU_BOTTOM_SECONDARY_PT;\n lang: string;\n quotazione: Quotazione;\n\n constructor(\n public router: Router,\n private location: Location,\n private multilinguaService: MultilinguaService,\n private menuService: MenuService,\n private seoService: SeoService,\n private ccService: NgcCookieConsentService,\n private quotazioneService: QuotazioneService\n ) {\n menuService.itemChanged$.subscribe((item) => this.onItemChanged(item));\n menuService.lang$.subscribe((lang) => this.onItemLang(lang));\n this.quotazioneService.latest().subscribe((borsa) => {\n this.quotazione = borsa.items;\n });\n }\n\n loadMenus() {\n // console.log('loadMenus');\n if (this.lang === \"IT\") {\n this.menuPrimary = this.menuPrimaryIta;\n this.menuSecondary = this.menuSecondaryIta;\n this.menuPrimaryBottom = this.menuPrimaryBottomIta;\n this.menuSecondaryBottom = this.menuSecondaryBottomIta;\n // if (_iub != null) {\n // _iub.csConfiguration['lang'] = 'it';\n // }\n } else if (this.lang === \"EN\") {\n this.menuPrimary = this.menuPrimaryEng;\n this.menuSecondary = this.menuSecondaryEng;\n this.menuPrimaryBottom = this.menuPrimaryBottomEng;\n this.menuSecondaryBottom = this.menuSecondaryBottomEng;\n // if (_iub != null) {\n // _iub.csConfiguration['lang'] = 'en';\n // }\n } else if (this.lang === \"PT\") {\n this.menuPrimary = this.menuPrimaryPt;\n this.menuSecondary = this.menuSecondaryPt;\n this.menuPrimaryBottom = this.menuPrimaryBottomPt;\n this.menuSecondaryBottom = this.menuSecondaryBottomPt;\n // if (_iub != null) {\n // _iub.csConfiguration['lang'] = 'en';\n // }\n }\n // console.log('_iub: ' + _iub.csConfiguration['lang']);\n }\n\n onItemLang(lang: string): void {\n // console.log('change lang');\n this.lang = lang;\n this.loadMenus();\n this.seo();\n }\n\n onItemChanged(languages: any): void {\n // console.log('change menu languages');\n this.menuLanguage = [];\n for (const lingua of languages) {\n this.menuLanguage.push({ titolo: lingua });\n }\n }\n\n seo() {\n const splitedPath = this.location.path().split(\"/\");\n // console.log('dove andare: ' + lang + ', splitedPath: ' + splitedPath);\n const pageElement = splitedPath.pop();\n const ob = [];\n\n this.multilinguaService.search = new Search(Multilingua);\n if (this.lang === \"IT\") {\n this.multilinguaService.search._.it = pageElement;\n } else if (this.lang === \"EN\") {\n this.multilinguaService.search._.eng = pageElement;\n } else if (this.lang === \"PT\") {\n this.multilinguaService.search._.pt = pageElement;\n }\n\n this.multilinguaService.getList().subscribe((res) => {\n if (res && res.length > 0) {\n const multilingua: Multilingua = res[0];\n switch (this.lang) {\n case \"EN\":\n this.seoService.setAll(\n multilingua.eng_keywords,\n multilingua.eng_title,\n multilingua.eng_description,\n this.lang\n );\n break;\n case \"PT\":\n this.seoService.setAll(\n multilingua.pt_keywords,\n multilingua.pt_title,\n multilingua.pt_description,\n this.lang\n );\n break;\n default:\n this.seoService.setAll(\n multilingua.it_keywords,\n multilingua.it_title,\n multilingua.it_description,\n this.lang\n );\n }\n }\n });\n }\n\n setLanguage(lang: string) {\n const splitedPath = this.location.path().split(\"/\");\n // console.log('dove andare: ' + lang + ', splitedPath: ' + splitedPath);\n const pageElement = splitedPath.pop();\n const ob = [];\n\n this.multilinguaService.search = new Search(Multilingua);\n if (this.lang === \"IT\") {\n this.multilinguaService.search._.it = pageElement;\n } else if (this.lang === \"EN\") {\n this.multilinguaService.search._.eng = pageElement;\n } else if (this.lang === \"PT\") {\n this.multilinguaService.search._.pt = pageElement;\n }\n\n this.lang = lang;\n if (this.lang === \"IT\") {\n this.menuPrimary = this.menuPrimaryIta;\n this.menuSecondary = this.menuSecondaryIta;\n this.menuPrimaryBottom = this.menuPrimaryBottomIta;\n this.menuSecondaryBottom = this.menuSecondaryBottomIta;\n } else if (this.lang === \"EN\") {\n this.menuPrimary = this.menuPrimaryEng;\n this.menuSecondary = this.menuSecondaryEng;\n } else if (this.lang === \"PT\") {\n this.menuPrimary = this.menuPrimaryPt;\n this.menuSecondary = this.menuSecondaryPt;\n }\n\n this.multilinguaService.getList().subscribe((res) => {\n if (res.length > 0) {\n const multilingua: Multilingua = res[0];\n\n this.path = \"\";\n if (splitedPath.toString().trim().length <= 0) {\n // console.log('sono qui');\n if (this.lang === \"IT\") {\n this.path = \"/\" + res[0].it;\n // this.seoService.setDescription(multilingua.it_description);\n // this.seoService.setKeywords(multilingua.it_keywords);\n // this.seoService.setTitle(multilingua.it_title);\n // this.seoService.setLang(this.lang);\n } else if (this.lang === \"EN\") {\n this.path = \"/\" + res[0].eng;\n // this.seoService.setDescription(multilingua.eng_description);\n // this.seoService.setKeywords(multilingua.eng_keywords);\n // this.seoService.setTitle(multilingua.eng_title);\n // this.seoService.setLang(this.lang);\n } else if (this.lang === \"PT\") {\n this.path = \"/\" + res[0].pt;\n // this.seoService.setDescription(multilingua.eng_description);\n // this.seoService.setKeywords(multilingua.eng_keywords);\n // this.seoService.setTitle(multilingua.eng_title);\n // this.seoService.setLang(this.lang);\n }\n this.router.navigate([this.path]);\n } else {\n for (const element of splitedPath) {\n if (element.trim().length > 0) {\n this.multilinguaService.search = new Search(\n Multilingua\n );\n if (this.lang === \"IT\") {\n this.multilinguaService.search._.eng = element;\n } else if (this.lang === \"EN\") {\n this.multilinguaService.search._.it = element;\n } else if (this.lang === \"PT\") {\n this.multilinguaService.search._.pt = element;\n }\n ob.push(\n this.multilinguaService.getAllList().pipe(\n map((associazione) => {\n if (associazione.length > 0) {\n if (this.lang === \"IT\") {\n this.path = this.path + \"/\" + associazione[0].it;\n } else if (this.lang === \"EN\") {\n this.path = this.path + \"/\" + associazione[0].eng;\n } else if (this.lang === \"PT\") {\n this.path = this.path + \"/\" + associazione[0].pt;\n }\n } else {\n // non so se puo funzionare\n this.path = this.path + element;\n }\n })\n )\n );\n }\n }\n from(ob)\n .pipe(concatMap((el) => el))\n .subscribe((val) => {\n if (this.lang === \"IT\") {\n this.path = this.path + \"/\" + res[0].it;\n } else if (this.lang === \"EN\") {\n this.path = this.path + \"/\" + res[0].eng;\n } else if (this.lang === \"PT\") {\n this.path = this.path + \"/\" + res[0].pt;\n }\n this.router.navigate([this.path]);\n });\n }\n } else {\n this.router.navigate([this.location.path()]);\n }\n });\n }\n\n sanitizeIT(): string {\n // tslint:disable-next-line:max-line-length\n return (\n \"\" +\n // tslint:disable-next-line:max-line-length\n \"\"\n );\n }\n\n sanitizeEN(): string {\n // tslint:disable-next-line:max-line-length\n return (\n \"\" +\n // tslint:disable-next-line:max-line-length\n \"\"\n );\n }\n\n sanitizePT(): string {\n // tslint:disable-next-line:max-line-length\n return (\n \"\" +\n // tslint:disable-next-line:max-line-length\n \"\"\n );\n }\n\n ngOnInit() {\n // subscribe to cookieconsent observables to react to main events\n this.popupOpenSubscription = this.ccService.popupOpen$.subscribe(() => {\n // you can use this.ccService.getConfig() to do stuff...\n });\n\n this.popupCloseSubscription = this.ccService.popupClose$.subscribe(() => {\n // you can use this.ccService.getConfig() to do stuff...\n });\n\n this.initializeSubscription = this.ccService.initialize$.subscribe(\n (event: NgcInitializeEvent) => {\n // you can use this.ccService.getConfig() to do stuff...\n }\n );\n\n this.statusChangeSubscription = this.ccService.statusChange$.subscribe(\n (event: NgcStatusChangeEvent) => {\n // you can use this.ccService.getConfig() to do stuff...\n }\n );\n\n this.revokeChoiceSubscription = this.ccService.revokeChoice$.subscribe(\n () => {\n // you can use this.ccService.getConfig() to do stuff...\n }\n );\n\n this.noCookieLawSubscription = this.ccService.noCookieLaw$.subscribe(\n (event: NgcNoCookieLawEvent) => {\n // you can use this.ccService.getConfig() to do stuff...\n }\n );\n }\n\n ngOnDestroy() {\n // unsubscribe to cookieconsent observables to prevent memory leaks\n this.popupOpenSubscription.unsubscribe();\n this.popupCloseSubscription.unsubscribe();\n this.initializeSubscription.unsubscribe();\n this.statusChangeSubscription.unsubscribe();\n this.revokeChoiceSubscription.unsubscribe();\n this.noCookieLawSubscription.unsubscribe();\n }\n\n ngDoCheck() {\n this.fillLanguages();\n this.alternativesMap = this.alternativesMapUnchecked;\n }\n\n refillLanguages() {\n this.alternativesMapPath = null;\n this.fillLanguages();\n }\n\n fillLanguages() {\n // sia il ts che html ciclano su questa proprietà\n const langs = this.alternativesLang;\n\n // se il path è quello corrente non rifaccio il giro\n if (this.alternativesMapPath === this.location.path()) {\n return;\n }\n\n const splitedPath = this.location.path().split(\"/\");\n // console.log('dove andare: ' + lang + ', splitedPath: ' + splitedPath);\n const pageElement = splitedPath.pop();\n if (pageElement == null || pageElement.trim().length === 0) {\n return;\n }\n\n // inizializzo la ricerca\n this.multilinguaService.search = new Search(Multilingua);\n if (this.lang === \"IT\") {\n this.multilinguaService.search._.it = pageElement;\n } else if (this.lang === \"EN\") {\n this.multilinguaService.search._.eng = pageElement;\n } else if (this.lang === \"PT\") {\n this.multilinguaService.search._.pt = pageElement;\n } else {\n // non riesco a inizializzare la ricerca. non la faccio\n return;\n }\n\n // tengo traccia del fatto che il calcolo varrà per questo path\n this.alternativesMapUnchecked = {};\n this.alternativesMapPath = this.location.path();\n\n this.multilinguaService.getList().subscribe((res) => {\n // se non ho alternative ogni lang mi riporta sulla pagina corrente\n if (res != null && res.length === 0) {\n for (const lang of langs) {\n this.alternativesMapUnchecked[lang] = this.location.path();\n }\n return;\n }\n\n // se il path è di un solo blocco\n if (res && splitedPath.toString().trim().length <= 0) {\n for (const lang of langs) {\n let path = \"\";\n if (lang === \"IT\") {\n path = \"/\" + res[0].it;\n } else if (lang === \"EN\") {\n path = \"/\" + res[0].eng;\n } else if (lang === \"PT\") {\n path = \"/\" + res[0].pt;\n }\n this.alternativesMapUnchecked[lang] = path;\n }\n return;\n }\n\n // altrimenti devo fare il multilingua di ogni pezzo\n for (const lang of langs) {\n const ob = [];\n this.alternativesMapUnchecked[lang] = \"\";\n for (const splittedPathPart of splitedPath) {\n if (splittedPathPart.trim().length > 0) {\n this.multilinguaService.search = new Search(\n Multilingua\n );\n if (this.lang === \"IT\") {\n this.multilinguaService.search._.it = splittedPathPart;\n } else if (this.lang === \"EN\") {\n this.multilinguaService.search._.eng = splittedPathPart;\n } else if (this.lang === \"PT\") {\n this.multilinguaService.search._.pt = splittedPathPart;\n }\n ob.push(\n this.multilinguaService.getAllList().pipe(\n map((associazione) => {\n if (associazione.length > 0) {\n if (lang === \"IT\") {\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] +\n \"/\" +\n associazione[0].it;\n } else if (lang === \"EN\") {\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] +\n \"/\" +\n associazione[0].eng;\n } else if (lang === \"PT\") {\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] +\n \"/\" +\n associazione[0].pt;\n }\n } else {\n // non so se puo funzionare\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] + splittedPathPart;\n }\n })\n )\n );\n }\n }\n from(ob)\n .pipe(concatMap((el) => el))\n .subscribe((val) => {\n if (lang === \"IT\") {\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] + \"/\" + res[0].it;\n } else if (lang === \"EN\") {\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] + \"/\" + res[0].eng;\n } else if (lang === \"PT\") {\n this.alternativesMapUnchecked[lang] =\n this.alternativesMapUnchecked[lang] + \"/\" + res[0].pt;\n }\n });\n }\n });\n }\n}\n","import {BrowserModule} from \"@angular/platform-browser\";\nimport {NgModule} from \"@angular/core\";\nimport {TableModule} from \"primeng/table\";\nimport {PaginatorModule} from \"primeng/paginator\";\nimport {CalendarModule} from \"primeng/calendar\";\nimport {TabViewModule} from \"primeng/tabview\";\nimport {AccordionModule} from \"primeng/accordion\";\nimport {BrowserAnimationsModule} from \"@angular/platform-browser/animations\";\nimport {PreloadAllModules, RouterModule, Routes} from \"@angular/router\";\nimport {AppComponent} from \"./app.component\";\nimport {HomepageComponent} from \"./homepage/homepage.component\";\nimport {FileUploadModule} from \"primeng/fileupload\";\n\nimport {CommonModule, DatePipe} from \"@angular/common\";\nimport {GruppoComponent} from \"./gruppo/gruppo.component\";\nimport {ServiziMondoComponent} from \"./servizi-mondo/servizi-mondo.component\";\nimport {ContattiComponent} from \"./contatti/contatti.component\";\nimport {SostenibilitaComponent} from \"./sostenibilita/sostenibilita.component\";\nimport {InvestorComponent} from \"./investor/investor.component\";\nimport {AreeComponent} from \"./aree/aree.component\";\nimport {StoriaComponent} from \"./storia/storia.component\";\nimport {BannersComponent} from \"./components/banners/banners.component\";\nimport {PagesDefaultComponent} from \"./components/pages-default/pages-default.component\";\nimport {HttpClientModule} from \"@angular/common/http\";\nimport {MessagesModule} from \"primeng/messages\";\nimport {MessageModule} from \"primeng/message\";\nimport {CorporateComponent} from \"./corporate/corporate.component\";\nimport {ComponentiGenericiComponent} from \"./componenti-generici/componenti-generici.component\";\nimport {PagesWithTablestComponent} from \"./components/pages-with-tables/pages-with-tables.component\";\nimport {PagesWithTabstComponent} from \"./components/pages-with-tabs/pages-with-tabs.component\";\nimport {PagesWithTabsTimeComponent} from \"./components/pages-with-tabs-time/pages-with-tabs-time.component\";\nimport {PictureGalleryComponent} from \"./components/picture-gallery/picture-gallery.component\";\nimport {\n PagesWithTabsWithoutDateComponent\n} from \"./components/pages-with-tabs-without-date/pages-with-tabs-without-date.component\";\nimport {PagesWithUploadstComponent} from \"./components/pages-with-uploads/pages-with-uploads.component\";\nimport {DisclaimerComponent} from \"./disclaimer/disclaimer.component\";\nimport {SlickCarouselModule} from \"ngx-slick-carousel\";\nimport {SidebarModule} from \"primeng/sidebar\";\nimport {PagesFullWidthComponent} from \"./components/pages-full-width/pages-full-width.component\";\nimport {PagesTitoliSriComponent} from \"./components/pages-titoli-sri/pages-titoli-sri.component\";\nimport {SocietaTrasparenteComponent} from \"./societa-trasparente/societa-trasparente.component\";\nimport {NgxSpinnerComponent} from \"./shared/ngx-spinner/ngx-spinner.component\";\nimport {BlockUIModule} from \"primeng/blockui\";\nimport {LeafletModule} from \"@asymmetrik/ngx-leaflet\";\nimport {MenuServiceGuard} from \"./service/guard/menu.service.guard\";\nimport {NgxMasonryModule} from \"ngx-masonry\";\nimport {SafePipe} from \"./pipe/safe.pipe\";\n\nimport {OrderPipe} from \"./pipe/order.pipe\";\nimport {FormsModule, ReactiveFormsModule} from \"@angular/forms\";\nimport {FormrequestComponent} from \"./formrequest/formrequest.component\";\n\nimport {RecaptchaFormsModule, RecaptchaModule} from \"ng-recaptcha\";\nimport {\n NgcCookieConsentModule,\n NgcCookieConsentConfig,\n} from \"ngx-cookieconsent\";\nimport {NotFoundComponent} from \"./not-found/not-found.component\";\n\nconst cookieConfig: NgcCookieConsentConfig = {\n enabled: true,\n cookie: {\n domain: \"servizitaliagroup.com\", // -<< must be 'localhost'\n expiryDays: 7,\n },\n palette: {\n popup: {\n background: \"#252e39\",\n },\n button: {\n background: \"#14a7d0\",\n },\n },\n position: \"bottom-right\",\n theme: \"edgeless\",\n type: \"opt-out\",\n content: {\n link: \"Cookie Policy.\",\n dismiss: \"Non Acconsento\",\n allow: \"Accetta i cookie analitici\",\n deny: \"Non Acconsento\",\n href: \"https://www.servizitaliagroup.com/cookie-policy\",\n message:\n \"Questo sito o gli strumenti terzi da questo utilizzati usano cookies tecnici necessari \" +\n \" al funzionamento di questo sito web e cookies finalizzati al miglioramento dell’esperienza di navigazione. \" +\n \"Non installiamo cookies opzionali senza il suo consenso. Per maggiori informazioni e modificare le \" +\n \"impostazioni sui cookies utilizzati consulti la nostra \" +\n ' Privacy Policy.',\n },\n showLink: false,\n};\n\nexport const IT = \"IT\";\nexport const EN = \"EN\";\nexport const PT = \"PT\";\nexport const routing: Routes = [\n {path: \"\", redirectTo: \"homepage\", pathMatch: \"full\"},\n\n\n {\n path: \"homepage\",\n component: HomepageComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n\n {\n path: \"homepage-en\",\n component: HomepageComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"fesr\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n {\n path: \"gruppo\",\n component: GruppoComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"gruppo/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"group\",\n component: GruppoComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"group/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"grupo\",\n component: GruppoComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: PT},\n },\n {\n path: \"grupo/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: PT},\n },\n\n\n {\n path: \"investor-relations\",\n component: InvestorComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"investor-relations/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"investor-relations-en\",\n component: InvestorComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"investor-relations-en/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"societa-trasparente\",\n component: SocietaTrasparenteComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n {\n path: \"societa-trasparente/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n {\n path: \"transparent-company\",\n component: SocietaTrasparenteComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"transparent-company/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"corporate-governance\",\n component: CorporateComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"corporate-governance/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n {\n path: \"corporate-governance-en\",\n component: CorporateComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"corporate-governance-en/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n\n {\n path: \"contatti\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"contacts\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"contatos\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: PT},\n },\n\n {\n path: \"privacy\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"cookie-policy\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n // DA GESTIRE\n {\n path: \"privacy-en\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"disclaimer\",\n component: DisclaimerComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n\n // DA GESTIRE\n {\n path: \"disclaimer-en\",\n component: DisclaimerComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"faq\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"faq-en\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"sostenibilita\",\n component: SostenibilitaComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"sostenibilita/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"sustainability\",\n component: SostenibilitaComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"sustainability/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n {\n path: \"sustentabilidade\",\n component: SostenibilitaComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: PT},\n },\n {\n path: \"sustentabilidade/:id\",\n component: ComponentiGenericiComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: PT},\n },\n\n {\n path: \"servizi-italia-nel-mondo\",\n component: ServiziMondoComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: IT},\n },\n {\n path: \"servizi-italia-in-the-world\",\n component: ServiziMondoComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: EN},\n },\n\n {\n path: \"servizi-italia-no-mundo\",\n component: ServiziMondoComponent,\n canActivate: [MenuServiceGuard],\n data: {lang: PT},\n },\n\n {path: \"**\", component: NotFoundComponent},\n];\n\n@NgModule({\n declarations: [\n AppComponent,\n HomepageComponent,\n GruppoComponent,\n ServiziMondoComponent,\n ContattiComponent,\n SostenibilitaComponent,\n InvestorComponent,\n AreeComponent,\n StoriaComponent,\n BannersComponent,\n PagesDefaultComponent,\n PagesTitoliSriComponent,\n PagesWithTabsWithoutDateComponent,\n PagesWithTablestComponent,\n PagesWithTabsTimeComponent,\n PagesWithTabstComponent,\n PagesWithUploadstComponent,\n SocietaTrasparenteComponent,\n PictureGalleryComponent,\n CorporateComponent,\n ComponentiGenericiComponent,\n DisclaimerComponent,\n PagesFullWidthComponent,\n NgxSpinnerComponent,\n SafePipe,\n OrderPipe,\n FormrequestComponent,\n NotFoundComponent,\n ],\n imports: [\n HttpClientModule,\n BrowserModule,\n TableModule,\n PaginatorModule,\n CalendarModule,\n TabViewModule,\n ReactiveFormsModule,\n FormsModule,\n FileUploadModule,\n AccordionModule,\n BrowserAnimationsModule,\n RouterModule.forRoot(routing, {\n useHash: false,\n preloadingStrategy: PreloadAllModules,\n onSameUrlNavigation: \"reload\",\n scrollPositionRestoration: \"enabled\",\n }),\n CommonModule,\n MessageModule,\n MessagesModule,\n SidebarModule,\n SlickCarouselModule,\n BlockUIModule,\n LeafletModule.forRoot(),\n NgxMasonryModule,\n RecaptchaModule,\n NgcCookieConsentModule.forRoot(cookieConfig),\n RecaptchaFormsModule,\n ],\n providers: [DatePipe],\n bootstrap: [AppComponent],\n})\nexport class AppModule {\n}\n","import {Component, OnInit} from '@angular/core';\nimport {Attivita} from '../model/attivita';\nimport {AttivitaService} from '../service/attivita.service';\nimport {ContenutoGenericoService} from '../service/contenuto-generico.service';\nimport {ContenutoGenerico} from '../model/contenuto-generico';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\nimport {ActivatedRoute} from '@angular/router';\nimport {Location} from '@angular/common';\nimport {MultilinguaService} from '../service/multilingua.service';\nimport {MenuService} from '../service/menu.service';\nimport {getAttivita, getOtherLangs} from '../constants/functions';\nimport {SeoService} from '../service/seo.service';\nimport {DOCS_REPLACE} from '../constants/constants';\n\n@Component({\n selector: 'app-settori',\n templateUrl: './aree.component.html',\n})\nexport class AreeComponent implements OnInit {\n public component: string = null;\n\n public attivitas: Array;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public loading = true;\n lingua: string;\n\n\n constructor(\n public allegatoService: AllegatoService,\n private contenutoService: ContenutoGenericoService,\n private multilingueService: MultilinguaService,\n private menuService: MenuService,\n private seoService: SeoService,\n private location: Location,\n public route: ActivatedRoute,\n private attivitaService: AttivitaService) {\n }\n\n ngOnInit() {\n this.route.url\n .subscribe(() => {\n const url = this.location.path().split('/');\n this.component = url.pop();\n this.contenutoService.find(this.component).subscribe(attivita => {\n this.element = attivita;\n this.lingua = this.element.lang;\n if (this.element && this.element.immagine) {\n this.allegatoService.find(attivita.immagine).subscribe(allegato => {\n if (allegato) {\n this.allegato = allegato;\n this.allegato.path = DOCS_REPLACE(this.allegato.uuid);\n this.seoService.setImage(this.allegato.path);\n }\n this.loading = false;\n },\n err => {\n this.loading = false;\n });\n }\n getOtherLangs(this.multilingueService, this.lingua,\n this.menuService, this.seoService, this.element.uuid);\n this.attivitas = new Array();\n\n const attivitaBoundToThis = getAttivita.bind(this);\n attivitaBoundToThis();\n },\n err => {\n this.loading = false;\n });\n\n });\n }\n}\n","import {Observable, of} from 'rxjs';\nimport 'rxjs/operator/catch';\nimport {HttpClient, HttpErrorResponse, HttpParams, HttpResponse} from '@angular/common/http';\nimport {Search} from './search';\nimport {catchError, map} from 'rxjs/operators';\n\nexport abstract class AbstractService {\n\n listSize: number;\n search: Search;\n\n constructor(protected url: string, protected http: HttpClient) {\n this.buildSearch();\n }\n\n public getList(): Observable {\n let params = new HttpParams();\n const search: Search = JSON.parse(JSON.stringify(this.search));\n params = this.applyRestrictions(params, search);\n\n return this.http.get>(this.url, {\n observe: 'response',\n params: params\n }).pipe(\n map(res => {\n this.listSize = res.headers.get('x-total-count') != null ? +res.headers.get('x-total-count') : 0;\n const ts: any = res.body;\n this.postList(ts);\n return ts;\n }\n ),\n catchError(this.handleError)\n );\n }\n\n public getListSize(search: Search): Observable {\n let params = new HttpParams();\n search._start = 0;\n search._limit = 1;\n params = this.applyRestrictions(params, search);\n\n return this.http.get(this.url + '/listSize', {\n observe: 'response',\n params: params\n }).pipe(\n map((res: HttpResponse) => {\n return res.headers.get('x-total-count') != null ? +res.headers.get('x-total-count') : 0;\n }\n ),\n catchError(this.handleError)\n );\n }\n\n public size(): Observable {\n let params = new HttpParams();\n this.search._start = 0;\n this.search._limit = 1;\n params = this.applyRestrictions(params, this.search);\n\n return this.http.get(this.url + '/listSize', {\n observe: 'response',\n params: params\n }).pipe(\n map((res: HttpResponse) => {\n return res.headers.get('x-total-count') != null ? +res.headers.get('x-total-count') : 0;\n }\n ),\n catchError(this.handleError)\n );\n }\n\n protected applyRestrictions(params: HttpParams, search: any, prefix?: string) {\n if (!prefix) {\n prefix = '';\n } else {\n prefix = '' + prefix;\n }\n for (const key in search) {\n let k_key = key;\n if (search[key] !== null) {\n if (key === '_') {\n k_key = '';\n }\n if (!(search[key] instanceof Object)) {\n params = params.set(k_key + prefix, this.toQueryParam(prefix + k_key, search[key]));\n } else if (search[key] instanceof Date) {\n params = params.set(k_key + prefix, this.toQueryParam(prefix + k_key, search[key]));\n } else {\n params = this.applyRestrictions(params, search[key], prefix + k_key);\n }\n }\n }\n return params;\n }\n\n protected toQueryParam(field: string, value: any): any {\n if (value instanceof Date) {\n return (value as Date).toLocaleString('it-IT', {hour12: false});\n }\n return value;\n }\n\n public find(id: string): Observable {\n return this.http.get(this.url + '/' + id)\n .pipe(catchError(this.handleError));\n }\n\n public newInstance(type: { new(): T; }): T {\n return new type();\n }\n\n public delete(id: string): Observable {\n return this.http.delete(this.url + '/' + id, {responseType: 'text'})\n .pipe(catchError(this.handleError));\n }\n\n public persist(element: T): Observable {\n return this.http.post(this.url, element)\n .pipe(catchError(this.handleError));\n }\n\n public update(element: T): Observable {\n return this.http.put(this.url + '/' + this.getId(element), element)\n .pipe(catchError(this.handleError));\n }\n\n public handleError(error: HttpErrorResponse): Observable {\n // console.error(error);\n if (error.status === 401) {\n return Observable.throw({status: error.status, error: 'Unauthorized'});\n }\n return of(null);\n // Observable.throw(error.message /*json().msg*/ || error.error /*json().error*/ || 'Server error');\n }\n\n public getInstance(TCreator: { new(): T; }): T {\n return new TCreator();\n }\n\n public abstract getId(element: T);\n\n public abstract buildSearch();\n\n public getAllList(search?: Search): Observable {\n let params = new HttpParams();\n\n if (search == null) {\n search = JSON.parse(JSON.stringify(this.search));\n }\n search._start = 0;\n search._limit = 100;\n params = this.applyRestrictions(params, search);\n\n return this.http.get>(this.url, {\n observe: 'response',\n params: params\n }).pipe(\n map(res => {\n const ts: any = res.body;\n this.postList(ts);\n return ts;\n }\n ),\n catchError(this.handleError)\n );\n }\n\n protected postList(ts: T[]) {\n }\n\n protected postFind(t: T) {\n }\n\n public getUrl(link: string): string {\n return this.generateLink(link, this.search);\n }\n\n private generateLink(link: string, search: any, prefix?: string) {\n if (!prefix) {\n prefix = '';\n } else {\n prefix = prefix + '.';\n }\n for (const key in search) {\n if (search[key] !== null) {\n if (!(search[key] instanceof Object)) {\n if (link.endsWith('?')) {\n link = link + prefix + key + '=' + this.toQueryParam(prefix + key, search[key]);\n\n } else {\n link = link + '&' + prefix + key + '=' + this.toQueryParam(prefix + key, search[key]);\n }\n } else if (search[key] instanceof Date) {\n if (link.endsWith('?')) {\n link = link + prefix + key + '=' + this.toQueryParam(prefix + key, search[key]);\n\n } else {\n link = link + '&' + prefix + key + '=' + this.toQueryParam(prefix + key, search[key]);\n }\n } else {\n // return this.generateLink(link, search[key], prefix + key);\n link = this.generateLink(link, search[key], prefix + key);\n }\n }\n }\n return link;\n }\n\n}\n","export class Search {\n _lt: T;\n _lte: T;\n _gt: T;\n _gte: T;\n _contains: T;\n _: T;\n _ne: T;\n\n _start = 0;\n _limit = 10;\n _sort: string;\n\n constructor(TCreator: { new(): T; }) {\n this._lt = new TCreator();\n this._lte = new TCreator();\n this._gt = new TCreator();\n this._gte = new TCreator();\n this._contains = new TCreator();\n this._ = new TCreator();\n this._ne = new TCreator();\n }\n\n}\n","import {\n Component,\n OnChanges,\n OnInit,\n SimpleChange,\n SimpleChanges,\n} from \"@angular/core\";\nimport {ActivatedRoute, Params, Router} from \"@angular/router\";\nimport {ContenutoGenericoService} from \"../service/contenuto-generico.service\";\nimport {ContenutoGenerico} from \"../model/contenuto-generico\";\nimport {AllegatoService} from \"../service/allegato.service\";\nimport {Allegato} from \"../model/allegato\";\nimport {Search} from \"../common/search\";\nimport {Location} from \"@angular/common\";\nimport {MultilinguaService} from \"../service/multilingua.service\";\nimport {MenuService} from \"../service/menu.service\";\nimport {Multilingua} from \"../model/multilingua\";\nimport {SeoService} from \"../service/seo.service\";\nimport {DOCS_REPLACE} from \"../constants/constants\";\n\n@Component({\n selector: \"app-componenti-generici\",\n templateUrl: \"./componenti-generici.component.html\",\n})\nexport class ComponentiGenericiComponent implements OnInit, OnChanges {\n public component: string;\n public nomePadre: string;\n public _componente: string;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public path_immagine: string;\n public loading = true;\n public disclaimer: boolean;\n public lingua: string;\n\n constructor(\n private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private multilingueService: MultilinguaService,\n private location: Location,\n private router: Router,\n private menuService: MenuService,\n private seo: SeoService,\n public route: ActivatedRoute\n ) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const componente: SimpleChange = changes.componente;\n // console.log('prev value: ', componente.previousValue);\n // console.log('got name: ', componente.currentValue);\n this._componente = componente.currentValue.toUpperCase();\n }\n\n ngOnInit() {\n this.contenutoService.search = new Search(\n ContenutoGenerico\n );\n this.route.params.subscribe((param: Params) => {\n // console.log('loading the component');\n if (!param.id) {\n this.route.url.subscribe(() => {\n const url = this.location.path().split(\"/\");\n this.component = url.pop();\n });\n } else {\n if (param.id === \"aumento-capitale\" ||\n param.id === \"capital-increase\" ||\n param.id === \"opa-nemo\" ||\n param.id === \"opa-cometa\" ||\n param.id === \"vto-cometa\" ||\n param.id === \"vto-nemo\") {\n console.log(\"disclaimer_operazioni: \" + this.disclaimer);\n this.disclaimer = true;\n } else {\n this.disclaimer = false;\n }\n this.component = param.id;\n }\n this.init();\n });\n }\n\n init() {\n this.contenutoService.find(this.component).subscribe(\n (componenteGenerico) => {\n if (componenteGenerico == null) {\n this.router.navigate([\"/homepage\"]);\n }\n this.element = componenteGenerico;\n this.contenutoService\n .find(this.element.contenitore)\n .subscribe((padre) => {\n if (padre) {\n this.element.nomePadre = padre.titolo;\n }\n });\n this.lingua = this.element.lang;\n this.getOtherLangs();\n // this.seo.addSeo(this.element);\n if (this.element && this.element.immagine) {\n this.allegatoService.find(this.element.immagine).subscribe(\n (allegato) => {\n if (allegato) {\n this.allegato = allegato;\n this.path_immagine = DOCS_REPLACE(this.allegato.uuid);\n this.seo.setImage(this.path_immagine);\n }\n this.loading = false;\n },\n (err) => {\n this.loading = false;\n this.contenutoService.search = new Search(\n ContenutoGenerico\n );\n }\n );\n } else {\n this.loading = false;\n }\n },\n (err) => {\n this.loading = false;\n this.contenutoService.search = new Search(\n ContenutoGenerico\n );\n }\n );\n }\n\n getOtherLangs() {\n // console.log('searching for langs');\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === \"IT\") {\n this.multilingueService.search._.it = this.component;\n } else if (this.lingua === \"EN\") {\n this.multilingueService.search._.eng = this.component;\n } else if (this.lingua === \"PT\") {\n this.multilingueService.search._.pt = this.component;\n }\n this.multilingueService.getList().subscribe((link) => {\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === \"EN\" && link[0].it) {\n lingue.push(\"IT\");\n }\n if (this.lingua === \"IT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n }\n // console.log('pushing for langs');\n this.menuService.add(lingue);\n });\n }\n\n accept(event) {\n if (event === true) {\n this.disclaimer = false;\n }\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {DOCS_REPLACE} from '../../constants/constants';\n\n@Component({\n selector: 'app-banners',\n templateUrl: './banners.component.html',\n})\nexport class BannersComponent implements OnInit {\n\n @Input() element: ContenutoGenerico;\n @Input() posizione: string;\n @Input() c_style: number;\n\n banner: ContenutoGenerico;\n\n public allegato: Allegato;\n hasContainer: boolean;\n lingua: string;\n loading = true;\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService) {\n }\n\n ngOnInit() {\n this.lingua = this.element.lang;\n this.contenutoService.search = new Search(ContenutoGenerico);\n this.contenutoService.search._limit = 1;\n this.contenutoService.search._start = 0;\n this.contenutoService.search._contains.pagina = this.element.uuid;\n this.contenutoService.search._.posizione = this.posizione;\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getList().subscribe(banners => {\n for (const banner of banners) {\n this.banner = banner;\n if (this.banner.contenitore) {\n this.hasContainer = true;\n } else {\n this.hasContainer = false;\n }\n this.allegatoService.find(this.banner.immagine).subscribe(allegato => {\n this.allegato = allegato;\n if (allegato != null) {\n this.allegato.path = DOCS_REPLACE(this.allegato.uuid);\n }\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n }\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n }\n\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\n\n@Component({\n selector: 'app-pages-default',\n templateUrl: './pages-default.component.html',\n})\nexport class PagesDefaultComponent implements OnInit, OnChanges {\n @Input() element: ContenutoGenerico;\n\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading = true;\n lingua: string;\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.lingua = this.element.lang;\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._contains.contenitore = this.element.uuid;\n }\n\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n }\n }\n\n ngOnInit() {\n }\n\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\n\n@Component({\n selector: 'app-pages-full-width',\n templateUrl: './pages-full-width.component.html',\n})\nexport class PagesFullWidthComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading = true;\n public lingua: string;\n\n constructor(private contenutoService: ContenutoGenericoService, private allegatoService: AllegatoService) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.lingua = this.element.lang;\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._.contenitore = this.element.uuid;\n }\n\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n }\n }\n\n ngOnInit() {\n\n }\n\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\n\n@Component({\n selector: 'app-pages-titoli-sri',\n templateUrl: './pages-titoli-sri.component.html',\n})\nexport class PagesTitoliSriComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading = true;\n public lingua: string;\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n this.lingua = this.element.lang;\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._.contenitore = this.element.uuid;\n }\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n }\n }\n\n ngOnInit() {\n this.lingua = this.element.lang;\n }\n\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\n\n@Component({\n selector: 'app-pages-with-tables',\n templateUrl: './pages-with-tables.component.html',\n})\nexport class PagesWithTablestComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading: boolean;\n public lingua: string;\n\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n this.lingua = this.element.lang;\n this.allegatoService.find(this.element.immagine).subscribe(allegato => {\n this.allegato = allegato;\n });\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._.contenitore = this.element.uuid;\n }\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.loading = true;\n });\n }\n }\n\n ngOnInit() {\n }\n\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges, NgZone} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\nimport {DocumentoService} from 'src/app/service/documento.service';\nimport {Documento} from 'src/app/model/documento';\nimport {concatMap, map} from 'rxjs/operators';\nimport {from} from 'rxjs';\nimport {DOCS_REPLACE, DOCS_REPLACE_NAME} from '../../constants/constants';\nimport {Location} from '@angular/common';\nimport {ActivatedRoute} from '@angular/router'; // RxJS 6 syntax\n\n\n@Component({\n selector: 'app-pages-with-tabs-time',\n templateUrl: './pages-with-tabs-time.component.html',\n})\nexport class PagesWithTabsTimeComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n\n private _element: string;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading: boolean;\n public listeDocumenti: Array<{ documenti: Array; anno: number }>;\n public lingua: string;\n public year: number;\n public index = -1;\n public base_path: string;\n\n\n constructor(private location: Location,\n private contenutoService: ContenutoGenericoService,\n private documentoService: DocumentoService,\n private allegatoService: AllegatoService,\n private activatedRoute: ActivatedRoute) {\n this.base_path = window.location.pathname;\n }\n\n handleChange(e) {\n this.index = e.index;\n const path = this.base_path + '?year=' + this.listeDocumenti[this.index].anno;\n this.year = this.listeDocumenti[this.index].anno;\n window.history.replaceState({}, '', path);\n }\n\n\n ngOnChanges(changes: SimpleChanges) {\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n this.lingua = this.element.lang;\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._.contenitore = this.element.uuid;\n }\n }\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.documentoService.search._.lang = this.lingua;\n this.documentoService.search._sort = 'data_pubblicazione DESC, ora_pubblicazione DESC';\n this.documentoService.search._.tipologia = this.element.uuid;\n const ob = [];\n const annoCorrente: number = new Date().getFullYear();\n const annoUltimo: number = annoCorrente - 10;\n for (let i: number = annoCorrente; i > annoUltimo; i--) {\n this.listeDocumenti = [];\n this.documentoService.search._contains.anno = i;\n ob.push(this.documentoService.getAllList().pipe(\n map(documentiAnnui => {\n if (documentiAnnui.length > 0) {\n const documenti = documentiAnnui;\n const anno: number = documenti[0].anno;\n this.listeDocumenti.push({documenti, anno});\n }\n this.loading = false;\n },\n err => {\n this.loading = false;\n })\n )\n );\n }\n from(ob).pipe(concatMap(res => res)).subscribe(\n () => {\n let i = 0;\n for (; i < this.listeDocumenti.length; i++) {\n if (this.listeDocumenti[i].anno === this.year) {\n break;\n }\n }\n // lascio che il tab view disegni la lista completa, altrimenti l'active index non ha effetto.\n setTimeout(\n () => {\n this.index = i;\n },\n 1000\n );\n }\n );\n },\n err => {\n this.loading = false;\n });\n\n }\n\n ngOnInit() {\n this.activatedRoute.queryParamMap\n .subscribe(queryParams => {\n this.year = +queryParams.get('year');\n if (!this.year) {\n this.year = new Date().getFullYear();\n }\n });\n this.lingua = this.element.lang;\n this.documentoService.search = new Search(Documento);\n }\n\n public download(uuid_allegato: string) {\n this.allegatoService.find(uuid_allegato).subscribe(\n allegato => {\n this.allegato = allegato;\n if (allegato != null) {\n window.open(DOCS_REPLACE(this.allegato.uuid), '_blank');\n }\n });\n }\n\n public getOra(date: string): string {\n if (date) {\n const ore = date.substring(11, 16);\n return ore;\n }\n return null;\n }\n\n path(uuid_allegato: string, titolo: string, estensione: string) {\n return DOCS_REPLACE_NAME(uuid_allegato, this.slug(titolo) + this.estensione(estensione));\n }\n\n\n estensione(estensione: string): string {\n switch (estensione) {\n case 'application/zip':\n return '.zip';\n case 'application/x-zip-compressed':\n return '.zip';\n case 'application/xhtml+xml':\n return '.xhtml';\n default:\n return '.pdf';\n }\n }\n\n\n slug(field: string) {\n if (field == null) {\n return null;\n }\n field = field.replace(/^\\s+|\\s+$/g, ''); // trim\n field = field.toLowerCase();\n return field.replace(/[^a-z0-9 -]/g, '') // remove invalid chars\n .replace(/\\s+/g, '-') // collapse whitespace and replace by -\n .replace(/-+/g, '-'); // collapse dashes\n }\n}\n\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\nimport {DocumentoService} from 'src/app/service/documento.service';\nimport {Documento} from 'src/app/model/documento';\nimport {concatMap, map} from 'rxjs/operators';\nimport {from} from 'rxjs';\nimport {DOCS_REPLACE, DOCS_REPLACE_NAME} from '../../constants/constants';\nimport {ActivatedRoute} from '@angular/router';\nimport {Location} from '@angular/common';\nimport {combineLatest} from 'rxjs-compat/operator/combineLatest'; // RxJS 6 syntax\n\n\n@Component({\n selector: 'app-pages-with-tabs-without-date',\n templateUrl: './pages-with-tabs-without-date.component.html',\n})\nexport class PagesWithTabsWithoutDateComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n\n private _element: string;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading: boolean;\n public listeDocumenti: Array<{ documenti: Array; anno: number }>;\n public lingua: string;\n public year: number;\n public index = -1;\n public base_path: string;\n public tipo_allegato: string;\n constructor(private location: Location,\n private contenutoService: ContenutoGenericoService,\n private documentoService: DocumentoService,\n private allegatoService: AllegatoService,\n private activatedRoute: ActivatedRoute) {\n this.base_path = window.location.pathname;\n }\n\n handleChange(e) {\n this.index = e.index;\n const path = this.base_path + '?year=' + this.listeDocumenti[this.index].anno;\n this.year = this.listeDocumenti[this.index].anno;\n window.history.replaceState({}, '', path);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n this.lingua = this.element.lang;\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._.contenitore = this.element.uuid;\n }\n }\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.documentoService.search._.lang = this.lingua;\n this.documentoService.search._sort = 'data_pubblicazione DESC, ora_pubblicazione DESC';\n this.documentoService.search._.tipologia = this.element.uuid;\n const ob = [];\n const annoCorrente: number = new Date().getFullYear();\n const annoUltimo: number = annoCorrente - 10;\n for (let i: number = annoCorrente; i > annoUltimo; i--) {\n this.listeDocumenti = [];\n this.documentoService.search._contains.anno = i;\n ob.push(this.documentoService.getAllList().pipe(\n map(documentiAnnui => {\n if (documentiAnnui.length > 0) {\n const documenti = documentiAnnui;\n const anno: number = documenti[0].anno;\n this.listeDocumenti.push({documenti, anno});\n }\n this.loading = false;\n },\n err => {\n this.loading = false;\n })\n )\n );\n }\n from(ob).pipe(concatMap(res => res)).subscribe(\n () => {\n let i = 0;\n for (; i < this.listeDocumenti.length; i++) {\n if (this.listeDocumenti[i].anno === this.year) {\n break;\n }\n }\n // lascio che il tab view disegni la lista completa, altrimenti l'active index non ha effetto.\n setTimeout(\n () => {\n this.index = i;\n },\n 1000\n );\n }\n );\n },\n err => {\n this.loading = false;\n });\n\n }\n\n ngOnInit() {\n this.activatedRoute.queryParamMap\n .subscribe(queryParams => {\n this.year = +queryParams.get('year');\n if (!this.year) {\n this.year = new Date().getFullYear();\n }\n });\n this.lingua = this.element.lang;\n this.documentoService.search = new Search(Documento);\n }\n\n public download(uuid_allegato: string) {\n this.allegatoService.find(uuid_allegato).subscribe(\n allegato => {\n this.allegato = allegato;\n if (allegato != null) {\n window.open(DOCS_REPLACE(this.allegato.uuid), '_blank');\n }\n });\n }\n\n path(uuid_allegato: string, titolo: string, estensione: string) {\n return DOCS_REPLACE_NAME(uuid_allegato, this.slug(titolo) + this.estensione(estensione));\n }\n\n\n estensione(estensione: string): string {\n switch (estensione) {\n case 'application/zip':\n return '.zip';\n case 'application/x-zip-compressed':\n return '.zip';\n case 'application/xhtml+xml':\n return '.xhtml';\n default:\n return '.pdf';\n }\n }\n\n slug(field: string) {\n if (field == null) {\n return null;\n }\n field = field.replace(/^\\s+|\\s+$/g, ''); // trim\n field = field.toLowerCase();\n return field.replace(/[^a-z0-9 -]/g, '') // remove invalid chars\n .replace(/\\s+/g, '-') // collapse whitespace and replace by -\n .replace(/-+/g, '-'); // collapse dashes\n }\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\nimport {DocumentoService} from 'src/app/service/documento.service';\nimport {Documento} from 'src/app/model/documento';\nimport {concatMap, map} from 'rxjs/operators';\nimport {from} from 'rxjs';\nimport {DOCS_REPLACE, DOCS_REPLACE_NAME} from '../../constants/constants';\nimport {ActivatedRoute} from '@angular/router';\nimport {Location} from '@angular/common'; // RxJS 6 syntax\n\n\n@Component({\n selector: 'app-pages-with-tabs',\n templateUrl: './pages-with-tabs.component.html',\n})\nexport class PagesWithTabstComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n\n private _element: string;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading: boolean;\n public listeDocumenti: Array<{ documenti: Array; anno: number }>;\n public lingua: string;\n public year: number;\n public index = -1;\n public base_path: string;\n\n constructor(private location: Location,\n private contenutoService: ContenutoGenericoService,\n private documentoService: DocumentoService,\n private allegatoService: AllegatoService,\n private activatedRoute: ActivatedRoute) {\n this.base_path = window.location.pathname;\n }\n\n handleChange(e) {\n this.index = e.index;\n const path = this.base_path + '?year=' + this.listeDocumenti[this.index].anno;\n this.year = this.listeDocumenti[this.index].anno;\n window.history.replaceState({}, '', path);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n this.lingua = this.element.lang;\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._.contenitore = this.element.uuid;\n }\n }\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.documentoService.search._.lang = this.lingua;\n this.documentoService.search._sort = 'data_pubblicazione DESC, ora_pubblicazione DESC';\n this.documentoService.search._.tipologia = this.element.uuid;\n const ob = [];\n const annoCorrente: number = new Date().getFullYear();\n const annoUltimo: number = annoCorrente - 10;\n for (let i: number = annoCorrente; i > annoUltimo; i--) {\n this.listeDocumenti = [];\n this.documentoService.search._contains.anno = i;\n ob.push(this.documentoService.getAllList().pipe(\n map(documentiAnnui => {\n if (documentiAnnui.length > 0) {\n const documenti = documentiAnnui;\n const anno: number = documenti[0].anno;\n this.listeDocumenti.push({documenti, anno});\n }\n this.loading = false;\n },\n err => {\n this.loading = false;\n })\n )\n );\n }\n from(ob).pipe(concatMap(res => res)).subscribe(\n () => {\n let i = 0;\n for (; i < this.listeDocumenti.length; i++) {\n if (this.listeDocumenti[i].anno === this.year) {\n break;\n }\n }\n // lascio che il tab view disegni la lista completa, altrimenti l'active index non ha effetto.\n setTimeout(\n () => {\n this.index = i;\n },\n 1000\n );\n }\n );\n },\n err => {\n this.loading = false;\n });\n\n }\n\n ngOnInit() {\n this.activatedRoute.queryParamMap\n .subscribe(queryParams => {\n this.year = +queryParams.get('year');\n if (!this.year) {\n this.year = new Date().getFullYear();\n }\n });\n this.lingua = this.element.lang;\n this.documentoService.search = new Search(Documento);\n }\n\n public download(uuid_allegato: string) {\n this.allegatoService.find(uuid_allegato).subscribe(\n allegato => {\n this.allegato = allegato;\n if (allegato != null) {\n window.open(DOCS_REPLACE(this.allegato.uuid), '_blank');\n }\n });\n }\n\n path(uuid_allegato: string, titolo: string, estensione: string) {\n return DOCS_REPLACE_NAME(uuid_allegato, this.slug(titolo) + this.estensione(estensione));\n }\n\n\n estensione(estensione: string): string {\n switch (estensione) {\n case 'application/zip':\n return '.zip';\n case 'application/x-zip-compressed':\n return '.zip';\n case 'application/xhtml+xml':\n return '.xhtml';\n default:\n return '.pdf';\n }\n }\n\n slug(field: string) {\n if (field == null) {\n return null;\n }\n field = field.replace(/^\\s+|\\s+$/g, ''); // trim\n field = field.toLowerCase();\n return field.replace(/[^a-z0-9 -]/g, '') // remove invalid chars\n .replace(/\\s+/g, '-') // collapse whitespace and replace by -\n .replace(/-+/g, '-'); // collapse dashes\n }\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\nimport {DocumentoService} from 'src/app/service/documento.service';\nimport {Documento} from 'src/app/model/documento';\nimport {manageErrorCode} from 'src/app/shared/manageErrorCode';\nimport {LazyLoadEvent, Message} from 'primeng/api';\nimport {Router} from '@angular/router';\nimport {DOCS_REPLACE, DOCS_REPLACE_NAME} from '../../constants/constants';\nimport { Table } from 'primeng/table';\n\n\n@Component({\n selector: 'app-pages-with-uploads',\n templateUrl: './pages-with-uploads.component.html',\n})\nexport class PagesWithUploadstComponent implements OnInit, OnChanges {\n\n @Input() element: ContenutoGenerico;\n msgs: Message[] = [];\n private _element: string;\n public allegato: Allegato;\n public componentiCollegati: Array;\n public listSize = 10;\n public loading = true;\n private firstReload = true;\n public documenti: Documento[];\n public hasPaginator: boolean;\n public lingua: string;\n\n\n constructor(private contenutoService: ContenutoGenericoService,\n private documentoService: DocumentoService, protected router: Router,\n private allegatoService: AllegatoService) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.loaddata(this.firstReload);\n }\n\n ngOnInit() {\n this.lingua = this.element.lang;\n }\n\n public download(uuid_allegato: string) {\n this.allegatoService.find(uuid_allegato).subscribe(allegato => {\n this.allegato = allegato;\n if (allegato != null) {\n window.open(DOCS_REPLACE(allegato.uuid), '_blank');\n }\n });\n }\n\n public loaddata(firstReload: boolean, datatable?: any) {\n this.preLoaddata();\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.documentoService.search._sort = 'data_pubblicazione DESC, ora_pubblicazione DESC';\n this.documentoService.search._.tipologia = this.element.uuid;\n this.documentoService.search._.lang = this.lingua;\n this.documentoService.getList()\n .subscribe(\n model => {\n this.documenti = model;\n this.listSize = this.documentoService.listSize;\n this.loading = false;\n },\n error => {\n this.loading = false;\n this.errorLoaddata(error);\n manageErrorCode(error, this.msgs, this.router);\n }\n );\n },\n err => {\n this.loading = false;\n });\n }\n\n public preLoaddata() {\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n this.lingua = this.element.lang;\n if (this.element.contenitore != null) {\n this.contenutoService.search._contains.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._contains.contenitore = this.element.uuid;\n }\n }\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.loading = true;\n }\n\n public errorLoaddata(error) {\n this.loading = false;\n }\n\n public lazyLoad(event: LazyLoadEvent, datatable?: any) {\n this.documentoService.search = new Search(Documento);\n if (!this.firstReload) {\n this.documentoService.search._start = event.first;\n }\n this.documentoService.search._limit = event.rows;\n this.preLoad(event, datatable);\n this.loaddata(this.firstReload, datatable);\n if (this.firstReload) {\n this.firstReload = false;\n }\n }\n\n protected preLoad(event: LazyLoadEvent, datatable?: any) {\n }\n\n public refresh(datatable: Table) {\n this.clearMsgs();\n datatable.reset();\n }\n\n public reload(datatable: Table) {\n this.documentoService.search._start = 0;\n this.refresh(datatable);\n }\n\n public reset(datatable: Table) {\n this.documentoService.buildSearch();\n this.refresh(datatable);\n }\n\n public clearMsgs() {\n this.msgs = [];\n }\n\n path(uuid_allegato: string, titolo: string, estensione: string) {\n return DOCS_REPLACE_NAME(uuid_allegato, this.slug(titolo) + this.estensione(estensione));\n }\n\n\n estensione(estensione: string): string {\n switch (estensione) {\n case 'application/zip':\n return '.zip';\n case 'application/x-zip-compressed':\n return '.zip';\n case 'application/xhtml+xml':\n return '.xhtml';\n default:\n return '.pdf';\n }\n }\n\n slug(field: string) {\n if (field == null) {\n return null;\n }\n field = field.replace(/^\\s+|\\s+$/g, ''); // trim\n field = field.toLowerCase();\n return field.replace(/[^a-z0-9 -]/g, '') // remove invalid chars\n .replace(/\\s+/g, '-') // collapse whitespace and replace by -\n .replace(/-+/g, '-'); // collapse dashes\n }\n\n}\n","import {Component, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\nimport {ContenutoGenericoService} from 'src/app/service/contenuto-generico.service';\nimport {ContenutoGenerico} from 'src/app/model/contenuto-generico';\nimport {Search} from 'src/app/common/search';\nimport {AllegatoService} from 'src/app/service/allegato.service';\nimport {Allegato} from 'src/app/model/allegato';\n\n@Component({\n selector: 'app-picture-gallery',\n templateUrl: './picture-gallery.component.html',\n styleUrls: ['./picture-gallery.component.css']\n})\nexport class PictureGalleryComponent implements OnInit, OnChanges {\n @Input() element: ContenutoGenerico;\n\n public allegato: Allegato;\n public componentiCollegati: Array;\n public loading = true;\n lingua: string;\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService) {\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.lingua = this.element.lang;\n this.contenutoService.search = new Search(ContenutoGenerico);\n if (this.element) {\n if (this.element.contenitore != null) {\n this.contenutoService.search._.contenitore = this.element.contenitore;\n } else {\n this.contenutoService.search._contains.contenitore = this.element.uuid;\n }\n\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n this.componentiCollegati = componentiCollegati;\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n }\n }\n\n ngOnInit() {\n }\n\n}\n","export const PERMISSION = {\n ADMIN: [\"Admin\"],\n VIEW: [\"Admin\", \"Web\"],\n};\n\nexport const TEST_PROTOCOL = \"http://\";\nexport const TEST_HOST_WITH_COLUMNS = \"portale-si.prod.eggscloud.it\";\nexport const TEST_PORT = \"80\";\n\nexport const APP_PROTOCOL =\n window.location.port === \"4242\"\n ? TEST_PROTOCOL\n : window.location.protocol + \"//\";\nexport let APP_HOST =\n window.location.port === \"4242\"\n ? TEST_HOST_WITH_COLUMNS + \":\"\n : window.location.hostname + \":\";\nexport const APP_PORT =\n window.location.port === \"4242\" ? TEST_PORT : window.location.port;\n\nexport const APP_CONTEXT = \"\";\nexport const APP_API = \"/api/\";\nexport const APP_NAME =\n APP_PROTOCOL + APP_HOST + APP_PORT + APP_CONTEXT + APP_API;\nexport const DOCS_PATH = APP_NAME + \"/documents/\";\nexport const DOCS_REPLACE = (uuid: string) =>\n APP_NAME + \"documents/\" + `${uuid}` + \"/download\";\nexport const DOCS_REPLACE_NAME = (uuid: string, name: string) =>\n APP_NAME + \"documents/\" + `${uuid}` + \"/download/\" + `${name}`;\nexport const ALLEGATI_API_PATH = APP_NAME + \"documents\";\nexport const SETTORI_API_PATH = APP_NAME + \"settori\";\nexport const BANNERS_API_PATH = APP_NAME + \"banners\";\nexport const SERVIZI_API_PATH = APP_NAME + \"servizio\";\nexport const GALLERIA_API_PATH = APP_NAME + \"gallerie\";\nexport const DOCUMENTI_API_PATH = APP_NAME + \"documenti\";\nexport const NEWS_API_PATH = APP_NAME + \"news\";\nexport const CAREERS_API_PATH = APP_NAME + \"careers\";\nexport const FORMREQUEST_API_PATH = APP_NAME + \"formrequest\";\nexport const FORMREQUESTCAREERS_API_PATH = APP_NAME + \"formrequestcareers\";\nexport const BLOG_API_PATH = APP_NAME + \"blog\";\nexport const UTENTI_LOGIN_API_PATH = \"utenti-login\";\nexport const TIPOLOGIE_NEWS_API_PATH = APP_NAME + \"tipologia-news\";\nexport const TIPOLOGIE_BANNERS_API_PATH = APP_NAME + \"tipologie-banners\";\nexport const BANNERS_SEZIONI_API_PATH = APP_NAME + \"banner-sezione\";\nexport const ATTIVITA_API_PATH = APP_NAME + \"attivita\";\nexport const SOTTOSERVIZI_API_PATH = APP_NAME + \"sotto-servizio\";\nexport const CONTENUTI_GENERICI_API_PATH = APP_NAME + \"contenuto-generico\";\nexport const MULTILINGUE_API_PATH = APP_NAME + \"multilingue\";\nexport const SOTTOATTIVITA_API_PATH = APP_NAME + \"sotto-attivita\";\nexport const STORIE_API_PATH = APP_NAME + \"storie\";\nexport const SEDI_API_PATH = APP_NAME + \"sedi\";\nexport const VIDEO_API_PATH = APP_NAME + \"video\";\nexport const DOCUMENTS_MIMETYPE_API_PATH = APP_NAME + \"documents_mimetype\";\n\nexport const TABLE_NAME = \"table_name\";\nexport const TABLE_KEY = \"table_key\";\n\nexport const STUDI_ITEMS = [\n { label: \"Licenza elementare\", value: \"Licenza elementare\" },\n { label: \"Licenza media\", value: \"Licenza media\" },\n {\n label: \"Titolo di istruzione secondaria superiore\",\n value: \"Titolo di istruzione secondaria superiore\",\n },\n {\n label: \"Diploma di istruzione secondaria superiore\",\n value: \"Diploma di istruzione secondaria superiore\",\n },\n {\n label: \"Diploma terziario extra-universitario\",\n value: \"Diploma terziario extra-universitario\",\n },\n { label: \"Laurea di primo livello\", value: \"Laurea di primo livello\" },\n { label: \"Diploma di laurea\", value: \"Diploma di laurea\" },\n {\n label: \"Laurea specialistica a ciclo unico\",\n value: \"Laurea specialistica a ciclo unico\",\n },\n { label: \"Laurea specialistica\", value: \"Laurea specialistica\" },\n {\n label: \"Master universitario di primo livello\",\n value: \"Master universitario di primo livello\",\n },\n {\n label: \"Master universitario di secondo livello\",\n value: \"Master universitario di secondo livello\",\n },\n {\n label: \"Diploma di specializzazione\",\n value: \"Diploma di specializzazione\",\n },\n {\n label: \"Titolo di dottore di ricerca\",\n value: \"Titolo di dottore di ricerca\",\n },\n];\n\nexport const PROTETTO_ITEMS = [\n { label: \"Si\", value: \"Si\" },\n { label: \"No\", value: \"No\" },\n];\n\nexport const PROFESSIONALE_ITEMS = [\n { label: \"Full-time\", value: \"Full-time\" },\n { label: \"Part-time\", value: \"Part-time\" },\n { label: \"Orario prestabilito\", value: \"Orario prestabilito\" },\n];\n\nexport const PAESI_IT = [\n \"Italia\",\n \"Europa\",\n \"Asia\",\n \"Sud America\",\n \"Nord America\",\n \"Africa\",\n];\n\nexport const PAESI_EN = [\n \"Italy\",\n \"Europe\",\n \"Asia\",\n \"South America\",\n \"North America\",\n \"Africa\",\n];\n\nexport const TELE_BORSA_API =\n \"https://syndication.teleborsa.it/serviziitalia/2019/json/json-teleborsa\";\n\nexport const GRUPPO = \"gruppo\";\nexport const STORIA = \"storia\";\nexport const SERVIZI = \"servizi\";\nexport const SETTORI = \"settori\";\nexport const SOSTENIBILITA = \"sostenibilita\";\nexport const MEDIA = \"media\";\nexport const BLOG = \"blog\";\nexport const INVESTOR_RELATIONS = \"investor-relations\";\nexport const HOMEPAGE = \"homepage\";\nexport const CORPORATE_GOVERNANCE = \"corporate-governance\";\nexport const CONTATTI = \"contatti\";\n\nexport const TOKEN_KEY = \"ictportal.asset_authData\";\nexport const APP_VERSION = \"1.0\";\n\nexport const MENU_PRIMARY_ITA = [\n { url: \"/homepage\", titolo: \"Home\" },\n { url: \"/societa-trasparente\", titolo: \"Societa trasparente\" },\n { url: \"/investor-relations\", titolo: \"Investors\" },\n { url: \"/corporate-governance\", titolo: \"Governance\" },\n { url: \"/contatti\", titolo: \"Contatti\" },\n\n];\n\nexport const MENU_PRIMARY_ENG = [\n { url: \"/homepage-en\", titolo: \"Home\" },\n { url: \"/transparent-company\", titolo: \"Transparent Company\" },\n { url: \"/investor-relations-en\", titolo: \"Investors\" },\n { url: \"/corporate-governance-en\", titolo: \"Governance\" },\n { url: \"/contacts\", titolo: \"Contacts\" },\n];\n\nexport const MENU_SECONDARY_ITA = [\n { url: \"/\", titolo: \"Home\", class: \"\" },\n { url: \"/gruppo\", titolo: \"Il Gruppo\", class: \"\" },\n { url: \"/servizi\", titolo: \"Servizi\", class: \"\" },\n { url: \"/aree-di-attivita\", titolo: \"Aree di Attività\", class: \"\" },\n { url: \"/sostenibilita\", titolo: \"Sostenibilità\", class: \"\" },\n { url: \"/media\", titolo: \"Media\", class: \"\" },\n { url: \"/blog\", titolo: \"Blog\", class: \"\" },\n { url: \"/contatti\", titolo: \"Contatti\" },\n];\n\nexport const MENU_BOTTOM_PRIMARY_ITA = [\n { url: \"/servizi-italia-nel-mondo\", titolo: \"Servizi Italia nel mondo\" },\n { url: \"/societa-trasparente\", titolo: \"Societa trasparente\" },\n { url: \"/investor-relations\", titolo: \"Investor Relations\" },\n { url: \"/corporate-governance\", titolo: \"Corporate Governance\" },\n { url: \"/faq\", titolo: \"FAQ\" },\n];\n\nexport const MENU_BOTTOM_SECONDARY_ITA = [\n { url: \"/\", titolo: \"Home\" },\n { url: \"/gruppo\", titolo: \"Il Gruppo\" },\n { url: \"/servizi\", titolo: \"Servizi\" },\n { url: \"/aree-di-attivita\", titolo: \"Aree di Attività\" },\n { url: \"/sostenibilita\", titolo: \"Sostenibilità\" },\n { url: \"/media\", titolo: \"Media\" },\n { url: \"/contatti\", titolo: \"Contatti\" },\n];\n\n\n\nexport const MENU_SECONDARY_ENG = [\n { url: \"/homepage-en\", titolo: \"Home\" },\n { url: \"/group\", titolo: \"The Group\" },\n { url: \"/services\", titolo: \"Services\" },\n { url: \"/areas-of-activity\", titolo: \"Activities\" },\n { url: \"/sustainability\", titolo: \"Sustainability\" },\n { url: \"/media-en\", titolo: \"Media\" },\n { url: \"/contacts\", titolo: \"Contacts\" },\n];\n\nexport const MENU_PRIMARY_PT = [\n {\n url: \"/societa-trasparente\",\n titolo: \"Sociedade Transparente\",\n },\n { url: \"/investor-relations-en\", titolo: \"Investor Relations\" },\n { url: \"/corporate-governance-en\", titolo: \"Corporate Governance\" },\n];\n\nexport const MENU_SECONDARY_PT = [\n { url: \"/pagina-inicial\", titolo: \"Pagina Inicial\" },\n { url: \"/grupo\", titolo: \"Grupo\" },\n { url: \"/servios\", titolo: \"Servicos\" },\n { url: \"/reas-de-atuao\", titolo: \"Areas de Atuacao\" },\n { url: \"/sustentabilidade\", titolo: \"Sustentabilidade\" },\n { url: \"/media\", titolo: \"Media\" },\n { url: \"/contatos\", titolo: \"Contatos\"},\n];\n\nexport const MENU_BOTTOM_PRIMARY_ENG = [\n {\n url: \"/servizi-italia-in-the-world\",\n titolo: \"Servizi Italia in the world\",\n },\n { url: \"/transparent-company\", titolo: \"Transparent Company\" },\n\n { url: \"/investor-relations-en\", titolo: \"Investor Relations\" },\n { url: \"/corporate-governance-en\", titolo: \"Corporate Governance\" },\n { url: \"/faq-en\", titolo: \"FAQ\" },\n];\n\nexport const MENU_BOTTOM_SECONDARY_ENG = [\n { url: \"/homepage-en\", titolo: \"Home\" },\n { url: \"/group\", titolo: \"The Group\" },\n { url: \"/services\", titolo: \"Services\" },\n { url: \"/areas-of-activity\", titolo: \"Activities\" },\n { url: \"/sustainability\", titolo: \"Sustainability\" },\n { url: \"/media-en\", titolo: \"Media\" },\n { url: \"/contacts\", titolo: \"Contacts\" },\n];\n\nexport const MENU_BOTTOM_SECONDARY_PT = [\n { url: \"/pagina-inicial\", titolo: \"Pagina Inicial\" },\n { url: \"/grupo\", titolo: \"Grupo\" },\n { url: \"/servios\", titolo: \"Servicos\" },\n { url: \"/reas-de-atuao\", titolo: \"Areas de Atuacao\" },\n { url: \"/sustentabilidade\", titolo: \"Sustentabilidade\" },\n { url: \"/media\", titolo: \"Media\" },\n { url: \"/contatos\", titolo: \"Contatos\", class: \"active-button\" },\n];\n\nexport const MENU_BOTTOM_PRIMARY_PT = [\n {\n url: \"/servizi-italia-in-the-world\",\n titolo: \"Servizi Italia in the world\",\n },\n {\n url: \"/societa-trasparente\",\n titolo: \"Sociedade Transparente\",\n },\n { url: \"/investor-relations-en\", titolo: \"Investor Relations\" },\n { url: \"/corporate-governance-en\", titolo: \"Corporate Governance\" },\n { url: \"/faq-en\", titolo: \"FAQ\" },\n];\n","import { Search } from \"../common/search\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { MultilinguaService } from \"../service/multilingua.service\";\nimport { MenuService } from \"../service/menu.service\";\nimport { Attivita } from \"../model/attivita\";\nimport { SeoService } from \"../service/seo.service\";\nimport { DOCS_REPLACE } from \"./constants\";\n\nfunction getAttivita() {\n this.attivitaService.search = new Search(Attivita);\n this.attivitaService.search._.lang = this.lingua;\n this.attivitaService.getAllList().subscribe((attivitas) => {\n this.attivitas = attivitas;\n for (const all of this.attivitas) {\n this.allegatoService.find(all.immagine_lancio).subscribe((attach) => {\n if (attach) {\n all.path_immagine = DOCS_REPLACE(attach.uuid);\n this.seoService.setImage(all.path_immagine);\n }\n });\n }\n });\n}\n\nfunction getOtherLangs(\n multilingueService: MultilinguaService,\n lingua: string,\n menuService: MenuService,\n seoService: SeoService,\n pageName: string\n) {\n multilingueService.search = new Search(Multilingua);\n // seoService.setLang(lingua);\n if (lingua === \"IT\") {\n // seoService.setTitle('Servizi Italia nel Mondo');\n multilingueService.search._.it = pageName;\n } else if (lingua === \"EN\") {\n // seoService.setTitle('Servizi Italia in the World');\n multilingueService.search._.eng = pageName;\n } else if (lingua === \"PT\") {\n // seoService.setTitle('Servizi Italia in the World');\n multilingueService.search._.pt = pageName;\n }\n multilingueService.getList().subscribe((link) => {\n // console.log('link trovato: ' + link);\n const lingue = [];\n if (link.length > 0) {\n if (lingua === \"EN\" && link[0].it) {\n lingue.push(\"IT\");\n }\n if (lingua === \"IT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n if (lingua === \"PT\" && link[0].pt) {\n lingue.push(\"EN\");\n }\n }\n menuService.add(lingue);\n });\n}\n\nexport { getOtherLangs };\nexport { getAttivita };\n","import {Component, OnInit} from '@angular/core';\nimport {ActivatedRoute} from '@angular/router';\nimport {ContenutoGenericoService} from '../service/contenuto-generico.service';\nimport {ContenutoGenerico} from '../model/contenuto-generico';\nimport {AllegatoService} from '../service/allegato.service';\nimport {Allegato} from '../model/allegato';\nimport {Search} from '../common/search';\nimport {CONTATTI, DOCS_REPLACE} from '../constants/constants';\nimport {NewsService} from '../service/news.service';\nimport {News} from '../model/news';\nimport {SeoService} from '../service/seo.service';\n\n@Component({\n selector: 'app-contatti',\n templateUrl: './contatti.component.html',\n})\nexport class ContattiComponent implements OnInit {\n\n public componente: string = null;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public sottoGruppi: Array;\n public loading: boolean;\n public path_immagine: string;\n public newsList: Array;\n public lingua: string;\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private newsService: NewsService,\n private seoService: SeoService,\n public route: ActivatedRoute) {\n }\n\n ngOnInit() {\n this.contenutoService.find(CONTATTI).subscribe(gruppo => {\n this.element = gruppo;\n this.lingua = this.element.lang;\n this.allegatoService.find(gruppo.immagine).subscribe(allegato => {\n if (allegato) {\n this.allegato = allegato;\n this.path_immagine = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.path_immagine);\n }\n });\n this.contenutoService.search = new Search(ContenutoGenerico);\n this.contenutoService.search._.contenitore = CONTATTI;\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(sottoGruppi => {\n this.sottoGruppi = sottoGruppi;\n this.loading = true;\n });\n this.newsService.search._sort = 'data_pubblicazione DESC';\n this.newsService.search._limit = 2;\n this.newsService.getList().subscribe(newsList => {\n this.newsList = newsList;\n });\n });\n }\n\n}\n\n\n","import {Component, OnInit} from '@angular/core';\nimport {ContenutoGenerico} from '../model/contenuto-generico';\nimport {ContenutoGenericoService} from '../service/contenuto-generico.service';\nimport {Search} from '../common/search';\nimport {AllegatoService} from '../service/allegato.service';\nimport {ActivatedRoute} from '@angular/router';\nimport {Allegato} from '../model/allegato';\nimport {MultilinguaService} from '../service/multilingua.service';\nimport {MenuService} from '../service/menu.service';\nimport {Multilingua} from '../model/multilingua';\nimport {Location} from '@angular/common';\nimport {SeoService} from '../service/seo.service';\nimport {DOCS_REPLACE} from '../constants/constants';\n\n@Component({\n selector: 'app-corporate',\n templateUrl: './corporate.component.html',\n})\nexport class CorporateComponent implements OnInit {\n\n public component: string = null;\n public element: ContenutoGenerico;\n public loading = true;\n public allegato: Allegato;\n public lingua: string;\n\n constructor(private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private multilingueService: MultilinguaService,\n private location: Location,\n private menuService: MenuService,\n private seoService: SeoService,\n public route: ActivatedRoute) {\n this.element = new ContenutoGenerico();\n }\n\n\n ngOnInit() {\n this.route.url\n .subscribe(() => {\n const url = this.location.path().split('/');\n this.component = url.pop();\n\n this.contenutoService.find(this.component).subscribe(corporate => {\n this.element = corporate;\n this.lingua = this.element.lang;\n this.getOtherLangs();\n // this.seoService.addSeo(corporate);\n if (this.element && this.element.immagine) {\n this.allegatoService.find(corporate.immagine).subscribe(allegato => {\n if (allegato) {\n this.allegato = allegato;\n this.allegato.path = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.allegato.path);\n }\n this.loading = false;\n });\n }\n });\n });\n }\n\n getOtherLangs() {\n // console.log('searching for langs');\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === 'IT') {\n this.multilingueService.search._.it = this.element.uuid;\n } else if (this.lingua === 'EN') {\n this.multilingueService.search._.eng = this.element.uuid;\n }\n\n this.multilingueService.getList().subscribe(link => {\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === 'EN' && link[0].it) {\n lingue.push('IT');\n }\n if (this.lingua === 'IT' && link[0].eng) {\n lingue.push('EN');\n }\n }\n // console.log('pushing for langs');\n this.menuService.add(lingue);\n });\n }\n\n}\n","import {Component, EventEmitter, OnInit, Output} from '@angular/core';\nimport {Title} from '@angular/platform-browser';\nimport {ActivatedRoute, Params} from '@angular/router';\nimport {Search} from '../common/search';\nimport {Multilingua} from '../model/multilingua';\nimport {MultilinguaService} from '../service/multilingua.service';\nimport {MenuService} from '../service/menu.service';\nimport {Location} from '@angular/common';\n\n@Component({\n selector: 'app-disclaimer',\n templateUrl: './disclaimer.component.html',\n})\nexport class DisclaimerComponent implements OnInit {\n\n @Output() disclaimerAccepted: EventEmitter = new EventEmitter();\n\n public lingua: string;\n public pageName: string;\n public oldDisclaimer = true;\n\n constructor(private titleService: Title,\n private multilingueService: MultilinguaService,\n private menuService: MenuService,\n private location: Location,\n public route: ActivatedRoute) {\n\n this.route.params.subscribe((param: Params) => {\n // console.log('loading the component');\n if (param.id === \"aumento-capitale\" ||\n param.id === \"capital-increase\") {\n this.oldDisclaimer = true;\n } else {\n this.oldDisclaimer = false;\n }\n }\n );\n }\n\n ngOnInit() {\n this.titleService.setTitle('Disclaimer');\n this.route.data.subscribe(data => {\n this.lingua = data['lang'];\n this.route.url.subscribe(() => {\n const url = this.location.path().split('/');\n this.pageName = url.pop();\n this.getOtherLangs();\n });\n });\n }\n\n accepted() {\n this.disclaimerAccepted.emit(true);\n }\n\n getOtherLangs() {\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === 'IT') {\n this.multilingueService.search._.it = this.pageName;\n } else if (this.lingua === 'EN') {\n this.multilingueService.search._.eng = this.pageName;\n }\n this.multilingueService.getList().subscribe(link => {\n // console.log('link trovato: ' + link);\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === 'EN' && link[0].it) {\n lingue.push('IT');\n }\n if (this.lingua === 'IT' && link[0].eng) {\n lingue.push('EN');\n }\n }\n this.menuService.add(lingue);\n });\n\n }\n\n}\n","import { Component, Input } from \"@angular/core\";\nimport { Formrequest } from \"../model/formrequest\";\nimport { FormrequestService } from \"../service/formrequest.service\";\nimport { DatePipe } from \"@angular/common\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { MultilinguaService } from \"../service/multilingua.service\";\nimport { Location } from \"@angular/common\";\nimport { MenuService } from \"../service/menu.service\";\n\n@Component({\n selector: \"app-formrequest\",\n templateUrl: \"./formrequest.component.html\",\n})\nexport class FormrequestComponent {\n public element: Formrequest = new Formrequest();\n public message;\n public privacy;\n public captcha = \"\";\n public lingua: string;\n @Input() language: string;\n\n constructor(\n private formrequestService: FormrequestService,\n private multilingueService: MultilinguaService,\n private location: Location,\n private menuService: MenuService,\n public datepipe: DatePipe\n ) {\n menuService.lang$.subscribe((lang) => this.onItemLang(lang));\n }\n\n onItemLang(lang: string) {\n this.lingua = lang;\n }\n\n send() {\n this.element.data = this.datepipe.transform(new Date(), \"yyyy-MM-dd hh:mm\");\n this.element.url = location.href;\n this.formrequestService.save(this.element).subscribe((email) => {\n if (email != null) {\n this.message = \"Grazie per averci scritto!\";\n this.element = new Formrequest();\n }\n });\n }\n\n public resolved(captchaResponse: string) {\n console.log(`Resolved captcha with response: ${captchaResponse}`);\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { ContenutoGenericoService } from \"../service/contenuto-generico.service\";\nimport { ContenutoGenerico } from \"../model/contenuto-generico\";\nimport { AllegatoService } from \"../service/allegato.service\";\nimport { Allegato } from \"../model/allegato\";\nimport { MultilinguaService } from \"../service/multilingua.service\";\nimport { MenuService } from \"../service/menu.service\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { Search } from \"../common/search\";\nimport { Location } from \"@angular/common\";\nimport { switchMap } from \"rxjs/operators\";\nimport { SeoService } from \"../service/seo.service\";\nimport { DOCS_REPLACE } from \"../constants/constants\";\n\n@Component({\n selector: \"app-gruppo\",\n templateUrl: \"./gruppo.component.html\",\n})\nexport class GruppoComponent implements OnInit {\n public component: string = null;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public loading = true;\n public path_immagine: string;\n public lingua: string;\n\n constructor(\n private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private location: Location,\n private seoService: SeoService,\n private menuService: MenuService,\n private multilingueService: MultilinguaService,\n public route: ActivatedRoute\n ) {}\n\n ngOnInit() {\n this.route.url.subscribe(() => {\n const url = this.location.path().split(\"/\");\n this.component = url.pop();\n\n this.contenutoService\n .find(this.component)\n .pipe(\n switchMap((gruppo) => {\n this.element = gruppo;\n this.lingua = this.element.lang;\n this.getOtherLangs();\n // this.seoService.addSeo(gruppo);\n return this.allegatoService.find(gruppo.immagine);\n })\n )\n .subscribe((allegato) => {\n if (allegato) {\n this.allegato = allegato;\n this.path_immagine = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.path_immagine);\n }\n this.loading = false;\n });\n });\n }\n\n getOtherLangs() {\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === \"IT\") {\n this.multilingueService.search._.it = this.element.uuid;\n } else if (this.lingua === \"EN\") {\n this.multilingueService.search._.eng = this.element.uuid;\n } else if (this.lingua === \"PT\") {\n this.multilingueService.search._.pt = this.element.uuid;\n }\n\n this.multilingueService.getList().subscribe((link) => {\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === \"EN\" && link[0].it) {\n lingue.push(\"IT\");\n }\n if (this.lingua === \"IT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n if (this.lingua === \"PT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n }\n this.menuService.add(lingue);\n });\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { ContenutoGenericoService } from \"../service/contenuto-generico.service\";\nimport { ContenutoGenerico } from \"../model/contenuto-generico\";\nimport { AllegatoService } from \"../service/allegato.service\";\nimport { Allegato } from \"../model/allegato\";\nimport { Search } from \"../common/search\";\nimport { DOCS_PATH, DOCS_REPLACE } from \"../constants/constants\";\nimport { NewsService } from \"../service/news.service\";\nimport { News } from \"../model/news\";\nimport { BlogService } from \"../service/blog.service\";\nimport { Blog } from \"../model/blog\";\nimport { MultilinguaService } from \"../service/multilingua.service\";\nimport { MenuService } from \"../service/menu.service\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { Location } from \"@angular/common\";\nimport { ServizioService } from \"../service/servizio.service\";\nimport { Servizio } from \"../model/servizio\";\nimport { DocumentoService } from \"../service/documento.service\";\nimport { Documento } from \"../model/documento\";\nimport { Observable } from \"rxjs\";\nimport \"rxjs-compat/add/operator/mergeMap\";\nimport { map, mergeAll, mergeMap } from \"rxjs/operators\";\nimport { SeoService } from \"../service/seo.service\";\n\n@Component({\n selector: \"app-homepage\",\n templateUrl: \"./homepage.component.html\",\n})\nexport class HomepageComponent implements OnInit {\n public pageName: string = null;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public sottoGruppi: Array;\n public loading = true;\n public path_immagine: string;\n public blogList: Array;\n public newsList: Array;\n public servizi: Array;\n public documentiList: Array;\n public lingua: string;\n public random_image: string;\n\n slideConfig = {\n dots: true,\n infinite: false,\n speed: 300,\n slidesToShow: 4,\n slidesToScroll: 4,\n responsive: [\n {\n breakpoint: 1024,\n settings: {\n slidesToShow: 3,\n slidesToScroll: 3,\n infinite: true,\n dots: true,\n },\n },\n {\n breakpoint: 600,\n settings: {\n slidesToShow: 2,\n slidesToScroll: 2,\n },\n },\n {\n breakpoint: 480,\n settings: {\n slidesToShow: 1,\n slidesToScroll: 1,\n },\n },\n // You can unslick at a given breakpoint now by adding:\n // settings: \"unslick\"\n // instead of a settings object\n ],\n };\n\n constructor(\n private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private documentoService: DocumentoService,\n private serviziService: ServizioService,\n private multilingueService: MultilinguaService,\n private newsService: NewsService,\n private blogService: BlogService,\n private menuService: MenuService,\n private location: Location,\n private seoService: SeoService,\n private router: Router,\n public route: ActivatedRoute\n ) {\n var random_images = [\"1.jpg\", \"2.jpg\", \"3.jpg\", \"4.jpg\", \"5.jpg\", \"6.jpg\"];\n\n this.random_image =\n random_images[Math.floor(Math.random() * random_images.length)];\n }\n\n ngOnInit() {\n this.route.url.subscribe(() => {\n const url = this.location.path().split(\"/\");\n this.pageName = url.pop();\n // console.log('siamo in: ' + this.pageName);\n\n this.contenutoService.find(this.pageName).subscribe((homepage) => {\n if (homepage === null) {\n this.router.navigate([\"/homepage\"]);\n }\n this.element = homepage;\n this.lingua = this.element.lang;\n this.allegatoService.find(homepage.immagine).subscribe((allegato) => {\n if (allegato) {\n this.allegato = allegato;\n this.path_immagine = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.path_immagine);\n }\n });\n this.newsList = new Array();\n this.getNews();\n this.getBlog();\n this.getOtherLangs();\n this.getDocuments();\n this.loadServizi();\n });\n });\n }\n\n getDocuments() {\n this.documentoService.search = new Search(Documento);\n this.documentoService.search._sort = \"data_pubblicazione DESC\";\n this.documentoService.search._.lang = this.lingua;\n if (this.lingua === \"IT\") {\n this.documentoService.search._.tipologia = \"comunicati-stampa\";\n } else {\n this.documentoService.search._.tipologia = \"press-releases\";\n }\n this.documentoService.search._start = 0;\n this.documentoService.search._limit = 4;\n this.documentoService.getList().subscribe((documents) => {\n this.documentiList = documents;\n this.loading = false;\n });\n }\n\n loadServizi() {\n this.serviziService.search = new Search(Servizio);\n this.serviziService.search._sort = \"ordine ASC\";\n this.serviziService.search._.lang = this.lingua;\n this.serviziService.getAllList().subscribe((servizi) => {\n this.servizi = servizi;\n for (const servizio of this.servizi) {\n this.allegatoService\n .find(servizio.immagine_lancio)\n .subscribe((allegato) => {\n if (allegato) {\n servizio.path_immagine = DOCS_REPLACE(allegato.uuid);\n }\n });\n this.allegatoService.find(servizio.logo).subscribe((allegato) => {\n if (allegato) {\n servizio.path_logo = DOCS_REPLACE(allegato.uuid);\n }\n });\n }\n });\n }\n\n getOtherLangs() {\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === \"IT\") {\n this.multilingueService.search._.it = this.element.uuid;\n } else if (this.lingua === \"EN\") {\n this.multilingueService.search._.eng = this.element.uuid;\n } else if (this.lingua === \"PT\") {\n this.multilingueService.search._.pt = this.element.uuid;\n }\n this.multilingueService.getList().subscribe((link) => {\n // console.log('link trovato: ' + link);\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === \"EN\" && link[0].it) {\n lingue.push(\"IT\");\n }\n if (this.lingua === \"IT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n }\n this.menuService.add(lingue);\n });\n }\n\n getDetailPage(): string {\n if (this.lingua === \"IT\") {\n return \"news-detail\";\n } else {\n return \"news-detail-en\";\n }\n }\n\n getDetailService(): string {\n if (this.lingua === \"IT\") {\n return \"servizi\";\n } else if (this.lingua === \"EN\") {\n return \"services\";\n } else {\n return \"servios\";\n }\n }\n\n getDetailPageBlog(): string {\n if (this.lingua === \"IT\") {\n return \"blog-detail\";\n } else {\n return \"blog-detail-en\";\n }\n }\n\n getNews() {\n this.newsService.search = new Search(News);\n this.newsService.search._sort = \"data_pubblicazione DESC\";\n this.newsService.search._.lang = this.lingua;\n this.newsService.search._limit = 3;\n this.newsService.getList().subscribe((res) => {\n this.newsList = res;\n for (const newws of this.newsList) {\n if (newws.immagine_lancio) {\n newws.allegato = this.single(newws);\n }\n }\n });\n }\n\n getBlog() {\n this.blogService.search = new Search(Blog);\n this.blogService.search._sort = \"data_pubblicazione DESC\";\n this.blogService.search._.lang = this.lingua;\n this.blogService.search._limit = 3;\n this.blogService.search._lt.data_pubblicazione = new Date();\n this.blogService.getList().subscribe((res) => {\n this.blogList = res;\n for (const blogg of this.blogList) {\n if (blogg.immagine_lancio) {\n blogg.allegato = this.single(blogg);\n }\n }\n });\n }\n\n getImage(imagepath: string) {\n return DOCS_REPLACE(imagepath);\n }\n\n single(neww: News | Blog): Observable {\n return this.allegatoService.find(neww.immagine_lancio);\n }\n}\n","import {Component, OnInit} from '@angular/core';\nimport {ActivatedRoute} from '@angular/router';\nimport {ContenutoGenericoService} from '../service/contenuto-generico.service';\nimport {ContenutoGenerico} from '../model/contenuto-generico';\nimport {AllegatoService} from '../service/allegato.service';\nimport {Allegato} from '../model/allegato';\nimport {Search} from '../common/search';\nimport {MultilinguaService} from '../service/multilingua.service';\nimport {MenuService} from '../service/menu.service';\nimport {Multilingua} from '../model/multilingua';\nimport {Location} from '@angular/common';\nimport {QuotazioneService} from '../service/quotazione.service';\nimport {Quotazione} from '../model/quotazione.model';\nimport {SeoService} from '../service/seo.service';\nimport {DOCS_REPLACE} from '../constants/constants';\n\n@Component({\n selector: 'app-investor',\n templateUrl: './investor.component.html',\n})\nexport class InvestorComponent implements OnInit {\n\n public component: string = null;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public sottoInvestors: Array;\n public loading = true;\n public servizio: string;\n public lingua: string;\n public quotazione: Quotazione;\n\n constructor(\n private contenutoService: ContenutoGenericoService,\n private multilingueService: MultilinguaService,\n private quotazioneService: QuotazioneService,\n private location: Location, private menuService: MenuService,\n private allegatoService: AllegatoService,\n private seoService: SeoService,\n public route: ActivatedRoute) {\n this.quotazioneService.latest().subscribe(\n borsa => {\n this.quotazione = borsa.items;\n });\n }\n\n ngOnInit() {\n this.route.url\n .subscribe(() => {\n const url = this.location.path().split('/');\n this.component = url.pop();\n this.contenutoService.find(this.component).subscribe(investor => {\n this.element = investor;\n if (this.element) {\n this.lingua = this.element.lang;\n }\n this.getOtherLangs();\n\n // this.seoService.addSeo(investor);\n if (this.element && this.element.immagine) {\n this.allegatoService.find(investor.immagine).subscribe(allegato => {\n if (allegato) {\n this.allegato = allegato;\n this.allegato.path = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.allegato.path);\n\n }\n });\n }\n this.contenutoService.search = new Search(ContenutoGenerico);\n this.contenutoService.search._.contenitore = this.component;\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(investors => {\n this.sottoInvestors = investors;\n this.loading = false;\n });\n });\n });\n\n }\n\n getOtherLangs() {\n // console.log('searching for langs');\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === 'IT') {\n this.multilingueService.search._.it = this.element.uuid;\n } else if (this.lingua === 'EN') {\n this.multilingueService.search._.eng = this.element.uuid;\n }\n\n this.multilingueService.getList().subscribe(link => {\n const lingue = [];\n if (link && link.length > 0) {\n if (this.lingua === 'EN' && link[0].it) {\n lingue.push('IT');\n }\n if (this.lingua === 'IT' && link[0].eng) {\n lingue.push('EN');\n\n }\n }\n // console.log('pushing for langs');\n this.menuService.add(lingue);\n\n });\n\n\n }\n\n\n}\n","export class Allegato {\n public uuid: string;\n public name: string;\n public original_name: string;\n public path: string;\n public mimetype: string;\n public table_name: string;\n public table_key: string;\n public size: number;\n public tipo_allegato: string;\n constructor() {\n }\n}","export class Attivita {\n public uuid: string;\n public slug: string;\n public titolo: string;\n public testo: string;\n public immagine_lancio: string;\n public path_immagine: string;\n public lang: string;\n\n constructor() {\n }\n}\n","import {Allegato} from './allegato';\nimport {Observable} from 'rxjs';\n\nexport class Blog {\n\n public uuid: string;\n public titolo: string;\n public anteprima: string;\n public testo: string;\n public data_pubblicazione: Date;\n public autore: string;\n public lang: string;\n public immagine_lancio: string;\n public immagine_contenuto: string;\n public video: string;\n\n public blog_title: string;\n public seo_keywords: string;\n public seo_description: string;\n public seo_titolo: string;\n public immagine_lancio_alt: string;\n public immagine_contenuto_alt: string;\n public path: string;\n public link: string;\n public allegato: Observable;\n public allegato_contenuto: Observable;\n\n constructor() {\n\n }\n}\n","export class ContenutoGenerico {\n public uuid: string;\n public sottotitolo: string;\n public slug: string; // è usato come sottotitolo\n public nomePadre: string; // è usato come sottotitolo\n public titolo: string;\n public keywords: string;\n public anteprima: string;\n public testo: string;\n public pagina: string;\n public posizione: string;\n public immagine: string;\n public contenitore: string;\n public template: string;\n public path_immagine: string;\n public ordine: number; // orderBy\n public lang: string;\n\n constructor() {\n\n }\n}\n","export class Documento {\n\n public uuid: string;\n public titolo: string;\n public descrizione: string;\n public uuid_allegato: string;\n public data_pubblicazione: Date;\n public ora_pubblicazione: Date;\n public tipologia: string;\n public anno: number;\n public lang: string;\n public tipo_allegato: string;\n constructor() {\n }\n}\n","export class Formrequest {\n public uuid: string;\n public data: string;\n public subject: string;\n public name: string;\n public message: string;\n public email: string;\n public url: string;\n public privacy: boolean = false;\n\n constructor() {}\n}\n\nexport class FormrequestCareer {\n public uuid: string;\n public data: string;\n public subject: string;\n public name: string;\n public message: string;\n public email: string;\n public url: string;\n public privacy: boolean = false;\n public immagine: string;\n public posizione: string;\n\n constructor() {}\n}\n","export class Multilingua {\n public uuid: string;\n\n public tipo: string;\n\n public it: string;\n public it_name: string;\n public it_keywords: string;\n public it_title: string;\n public it_description: string;\n\n public eng: string;\n public eng_name: string;\n public eng_keywords: string;\n public eng_title: string;\n public eng_description: string;\n\n public pt: string;\n public pt_name: string;\n public pt_keywords: string;\n public pt_title: string;\n public pt_description: string;\n\n constructor() {}\n}\n","import {Allegato} from './allegato';\nimport {Observable} from 'rxjs';\n\nexport class News {\n\n public uuid: string;\n public titolo: string;\n public anteprima: string;\n public testo: string;\n public data_pubblicazione: Date;\n public periodo: string;\n public autore: string;\n public lang: string;\n\n public immagine_lancio: string;\n public path: string;\n public link: string;\n public allegato: Observable;\n\n constructor() {\n\n }\n}\n","export class Sede {\n\n public uuid: string;\n public denominazione: string;\n public descrizione: string;\n public indirizzo: string;\n public contatti: string;\n public paese: string;\n public latitudine: number;\n public longitudine: number;\n public lang: string;\n public email: string;\n public website: string;\n\n constructor() {\n }\n}\n","export class Servizio{\n public uuid: string;\n public slug: string;\n public titolo: string;\n public anteprima: string;\n public testo: string;\n public immagine_lancio: string;\n public documenti: Array;\n public immagini: Array;\n public logo: string;\n public colore:string;\n public path_immagine:string;\n public path_logo:string;\n public ordine:number; //orderBy\n public lang: string;\n public documento: string;\n\n constructor(){\n\n }\n}","export class Storia{\n\n public uuid: string;\n public periodo: string;\n public titolo: string;\n public testo: string;\n public immagine:string;\n public path_immagine:string;\n public ordine:number; //orderBy\n public lang: string;\n\n constructor(){}\n}","import {Component} from '@angular/core';\nimport {ActivatedRoute} from '../../../node_modules/@angular/router';\n\n@Component({\n selector: 'app-not-found',\n templateUrl: './not-found.component.html',\n})\nexport class NotFoundComponent {\n\n\n constructor(private route: ActivatedRoute) {\n window.location.href = 'https://servizitaliagroup.com/404';\n }\n\n}\n","import {Pipe, PipeTransform} from '@angular/core';\nimport {DomSanitizer, SafeHtml, SafeStyle, SafeScript, SafeUrl, SafeResourceUrl} from '@angular/platform-browser';\nimport {News} from '../model/news';\n\n@Pipe({\n name: 'order'\n})\nexport class OrderPipe implements PipeTransform {\n\n constructor() {\n }\n\n public transform(all: News[]) {\n if (all === null || all.length === 0) {\n return all;\n }\n return all.sort((n1: News, n2: News) => n1.data_pubblicazione.getTime() - n2.data_pubblicazione.getTime());\n }\n}\n","import {Pipe, PipeTransform} from '@angular/core';\nimport {DomSanitizer, SafeHtml, SafeStyle, SafeScript, SafeUrl, SafeResourceUrl} from '@angular/platform-browser';\n\n@Pipe({\n name: 'safe'\n})\nexport class SafePipe implements PipeTransform {\n\n constructor(protected sanitizer: DomSanitizer) {\n }\n\n public transform(value: any, type: string): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl {\n switch (type) {\n case 'html':\n return this.sanitizer.bypassSecurityTrustHtml(value);\n case 'style':\n return this.sanitizer.bypassSecurityTrustStyle(value);\n case 'script':\n return this.sanitizer.bypassSecurityTrustScript(value);\n case 'url':\n return this.sanitizer.bypassSecurityTrustUrl(value);\n case 'resourceUrl':\n return this.sanitizer.bypassSecurityTrustResourceUrl(value);\n default:\n throw new Error(`Invalid safe type specified: ${type}`);\n }\n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { AbstractService } from \"../common/abstract-service\";\nimport { Search } from \"../common/search\";\nimport { Allegato } from \"../model/allegato\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { catchError } from \"rxjs/operators\";\nimport { Observable } from \"rxjs\";\nimport {\n ALLEGATI_API_PATH,\n DOCUMENTS_MIMETYPE_API_PATH,\n TABLE_KEY,\n TABLE_NAME,\n TOKEN_KEY,\n} from \"../constants/constants\";\n@Injectable({\n providedIn: \"root\",\n})\nexport class AllegatoService extends AbstractService {\n constructor(protected http: HttpClient) {\n super(ALLEGATI_API_PATH, http);\n }\n\n public getId(element: Allegato) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Allegato);\n }\n\n public download(uuid: string) {\n return this.http\n .get(this.url + \"/\" + uuid + \"/download\", { responseType: \"blob\" })\n .pipe(catchError(this.handleError));\n }\n\n public single(id: string): Observable {\n return this.http.get(this.url + \"/\" + id);\n }\n\n public persistAllegato(allegato: Allegato, blob: any): Promise {\n return new Promise((resolve, reject) => {\n if (allegato) {\n const formData: FormData = new FormData(),\n xhr: XMLHttpRequest = new XMLHttpRequest();\n formData.append(\"file\", blob);\n formData.append(TABLE_NAME, allegato.table_name);\n formData.append(TABLE_KEY, allegato.table_key);\n xhr.onreadystatechange = () => {\n if (xhr.readyState === 4) {\n if (xhr.status === 200) {\n resolve(JSON.parse(xhr.response));\n } else {\n reject(xhr.response);\n }\n }\n };\n xhr.open(\"POST\", this.url, true);\n const token = localStorage.getItem(TOKEN_KEY);\n xhr.setRequestHeader(\"Authorization\", \"Bearer \" + token);\n xhr.send(formData);\n }\n });\n }\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {ATTIVITA_API_PATH} from '../constants/constants';\nimport {Attivita} from '../model/attivita';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AttivitaService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(ATTIVITA_API_PATH, http);\n }\n\n\n public getId(element: Attivita) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Attivita);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {BLOG_API_PATH} from '../constants/constants';\nimport {Blog} from '../model/blog';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BlogService extends AbstractService {\n\n constructor(protected http: HttpClient) {\n super(BLOG_API_PATH, http);\n }\n\n\n public getId(element: Blog) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Blog);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {CONTENUTI_GENERICI_API_PATH} from '../constants/constants';\nimport {ContenutoGenerico} from '../model/contenuto-generico';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ContenutoGenericoService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(CONTENUTI_GENERICI_API_PATH, http);\n }\n\n\n public getId(element: ContenutoGenerico) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(ContenutoGenerico);\n }\n \n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {DOCUMENTI_API_PATH} from '../constants/constants';\nimport {Documento} from '../model/documento';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DocumentoService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(DOCUMENTI_API_PATH, http);\n }\n\n\n public getId(element: Documento) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Documento);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {FORMREQUEST_API_PATH} from '../constants/constants';\nimport {HttpClient} from '@angular/common/http';\nimport {Formrequest} from '../model/formrequest';\nimport {Observable} from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FormrequestService {\n\n constructor(protected http: HttpClient) {\n }\n\n\n public save(element: Formrequest): Observable {\n return this.http.post(FORMREQUEST_API_PATH, element);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {ActivatedRoute, ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot} from '@angular/router';\nimport {MenuService} from '../menu.service';\nimport {Location} from '@angular/common';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MenuServiceGuard implements CanActivate {\n\n lang: string;\n\n constructor(\n private menuService: MenuService,\n private location: Location,\n private route: ActivatedRoute) {\n }\n\n canActivate(activatedRouteSnapshots: ActivatedRouteSnapshot,\n routerStateSnapshot: RouterStateSnapshot): boolean {\n\n this.lang = activatedRouteSnapshots.data.lang;\n // console.log('routerStateSnapshot: ' + routerStateSnapshot.url + ', lang: ' + this.lang);\n this.menuService.changeLang(this.lang);\n return true;\n // const obs: Observable [] = [];\n // obs.push(this.route.url, this.route.data);\n // return forkJoin(obs)\n // .pipe(\n // map( results => {\n // const url = this.location.path().split('/');\n // this.lang = results[1].lang;\n // this.menuService.changeLang(this.lang);\n // return true;\n // })\n // );\n // this.route.url.subscribe(() => {\n //\n // console.log('siamo in: ' + url);\n // });\n // return this.route.data\n // .pipe(\n // map( data => {\n // this.lang = data.lang;\n // this.menuService.changeLang(this.lang);\n // return true;\n // })\n // );\n }\n}\n","import {EventEmitter, Injectable} from '@angular/core';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MenuService {\n public itemChanged$: EventEmitter;\n public lang$: EventEmitter;\n private menus: string[];\n private lang: string;\n\n constructor() {\n this.itemChanged$ = new EventEmitter();\n this.lang$ = new EventEmitter();\n }\n\n public add(menus: string[]): void {\n this.menus = menus;\n this.itemChanged$.emit(menus);\n }\n\n public changeLang(lang: string): void {\n this.lang = lang;\n this.lang$.emit(lang);\n }\n\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {MULTILINGUE_API_PATH} from '../constants/constants';\nimport {Multilingua} from '../model/multilingua';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MultilinguaService extends AbstractService {\n\n constructor(protected http: HttpClient) {\n super(MULTILINGUE_API_PATH, http);\n }\n\n\n public getId(element: Multilingua) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Multilingua);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {NEWS_API_PATH} from '../constants/constants';\nimport {News} from '../model/news';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NewsService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(NEWS_API_PATH, http);\n }\n\n\n public getId(element: News) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(News);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {SERVIZI_API_PATH, TELE_BORSA_API} from '../constants/constants';\nimport {Servizio} from '../model/servizio';\nimport {HttpClient} from '@angular/common/http';\nimport {Quotazione} from '../model/quotazione.model';\nimport {map} from 'rxjs/operators';\nimport {Observable} from 'rxjs';\nimport {Borsa} from '../model/borsa.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QuotazioneService {\n\n constructor(protected http: HttpClient) {\n }\n\n\n public latest(): Observable {\n return this.http.get(TELE_BORSA_API);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {SEDI_API_PATH} from '../constants/constants';\nimport {Sede} from '../model/sede';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SedeService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(SEDI_API_PATH, http);\n }\n\n\n public getId(element: Sede) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Sede);\n }\n\n}\n","import { Injectable, Renderer2, RendererFactory2 } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { Meta, Title } from \"@angular/platform-browser\";\nimport { ContenutoGenerico } from \"../model/contenuto-generico\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { Blog } from \"../model/blog\";\nimport { Careers } from \"../model/careers\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class SeoService {\n private renderer: Renderer2;\n\n constructor(\n protected http: HttpClient,\n private title: Title,\n private meta: Meta,\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(null, null);\n }\n\n public addSeo(contenutoGenerico: ContenutoGenerico) {\n this.init();\n this.setTitle(contenutoGenerico.titolo);\n this.setLang(contenutoGenerico.lang);\n this.setDescription(contenutoGenerico.sottotitolo);\n this.setKeywords(contenutoGenerico.sottotitolo);\n if (!this.meta.getTag('name = \"date\"')) {\n this.meta.addTag({\n name: \"date\",\n content: \"2018-10-04\",\n scheme: \"YYYY-MM-DD\",\n });\n }\n }\n\n public addSeoIt(multilingua: Multilingua) {\n this.init();\n this.setTitle(multilingua.it_title);\n this.setLang(\"IT\");\n this.setDescription(multilingua.it_description);\n this.setKeywords(multilingua.it_keywords);\n }\n\n public addSeoEn(multilingua: Multilingua) {\n this.init();\n this.setTitle(multilingua.eng_title);\n this.setLang(\"EN\");\n this.setDescription(multilingua.eng_description);\n this.setKeywords(multilingua.eng_keywords);\n }\n\n public addSeoBlog(blog: Blog) {\n this.init();\n this.setTitle(blog.seo_titolo);\n if (blog.lang) {\n this.setLang(blog.lang);\n } else {\n this.setLang(\"IT\");\n }\n this.setDescription(blog.seo_description);\n this.setKeywords(blog.seo_keywords);\n }\n\n public addSeoCareer(careers: Careers) {\n this.init();\n this.setTitle(careers.titolo);\n if (careers.lang) {\n this.setLang(careers.lang);\n } else {\n this.setLang(\"IT\");\n }\n this.setDescription(careers.titolo);\n this.setKeywords(careers.titolo);\n }\n\n public setAll(\n keywords: string,\n title: string,\n description: string,\n lang: string\n ) {\n this.init();\n this.renderer.setAttribute(\n document.querySelector(\"html\"),\n \"lang\",\n lang.toLocaleLowerCase()\n );\n this.setDescription(description);\n this.setKeywords(keywords);\n this.setTitle(title);\n this.setDate(new Date());\n }\n\n public init() {\n if (!this.meta.getTag('name = \"viewport\"')) {\n this.meta.addTag({\n name: \"viewport\",\n content: \"width=device-width, initial-scale=1\",\n });\n this.meta.addTag({ name: \"robots\", content: \"INDEX, FOLLOW\" });\n this.meta.addTag({ httpEquiv: \"Content-Type\", content: \"text/html\" });\n this.meta.addTag({ property: \"og:type\", content: \"website\" });\n this.meta.addTag({\n property: \"og:site_name\",\n content: \"servizitalia.it\",\n });\n this.meta.addTag({ charset: \"UTF-8\" });\n this.meta.addTag({ name: \"author\", content: \"Servizi Italia Spa\" });\n }\n }\n\n public setLang(lang: string) {\n if (lang) {\n this.renderer.setAttribute(\n document.querySelector(\"html\"),\n \"lang\",\n lang.toLocaleLowerCase()\n );\n }\n }\n\n public setImage(image: string) {\n if (image) {\n if (!this.meta.getTag('name = \"og:image\"')) {\n this.meta.addTag({ name: \"og:image\", content: image });\n } else {\n this.meta.updateTag({ name: \"og:image\", content: image });\n }\n }\n }\n\n public setDate(dateReal: Date) {\n const data = dateReal.toISOString().slice(0, 10);\n if (!this.meta.getTag('name = \"date\"')) {\n this.meta.addTag({ name: \"date\", content: data, scheme: \"YYYY-MM-DD\" });\n }\n }\n\n public setTitle(title: string) {\n if (title) {\n this.title.setTitle(title);\n if (!this.meta.getTag('name = \"og:title\"')) {\n this.meta.addTag({ name: \"og:title\", content: title });\n } else {\n this.meta.updateTag({ name: \"og:title\", content: title });\n }\n }\n }\n\n public setDescription(description: string) {\n if (description) {\n if (!this.meta.getTag('name = \"description\"')) {\n this.meta.addTag({ name: \"description\", content: description });\n } else {\n this.meta.updateTag({ name: \"description\", content: description });\n }\n if (!this.meta.getTag('name = \"og:description\"')) {\n this.meta.addTag({ name: \"og:description\", content: description });\n } else {\n this.meta.updateTag({ name: \"og:description\", content: description });\n }\n }\n }\n\n public setKeywords(keywords: string) {\n if (keywords) {\n if (!this.meta.getTag('name = \"keywords\"')) {\n this.meta.addTag({ name: \"keywords\", content: keywords });\n } else {\n this.meta.updateTag({ name: \"keywords\", content: keywords });\n }\n }\n }\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {SERVIZI_API_PATH} from '../constants/constants';\nimport {Servizio} from '../model/servizio';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ServizioService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(SERVIZI_API_PATH, http);\n }\n\n\n public getId(element: Servizio) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Servizio);\n }\n\n}\n","import {Injectable} from '@angular/core';\nimport {AbstractService} from '../common/abstract-service';\nimport {Search} from '../common/search';\nimport {STORIE_API_PATH} from '../constants/constants';\nimport {Storia} from '../model/storia';\nimport {HttpClient} from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StoriaService extends AbstractService{\n\n constructor(protected http: HttpClient) {\n super(STORIE_API_PATH, http);\n }\n\n\n public getId(element: Storia) {\n return element.uuid;\n }\n\n public buildSearch() {\n this.search = new Search(Storia);\n }\n\n}\n","import 'core-js/shim';\nimport {Component, OnInit} from '@angular/core';\nimport {SedeService} from 'src/app/service/sede.service';\nimport {Sede} from '../model/sede';\nimport {icon, latLng, marker, tileLayer} from 'leaflet';\nimport {ActivatedRoute} from '@angular/router';\nimport {Location} from '@angular/common';\nimport {Search} from '../common/search';\nimport {MultilinguaService} from '../service/multilingua.service';\nimport {MenuService} from '../service/menu.service';\nimport {getOtherLangs} from '../constants/functions';\nimport {SeoService} from '../service/seo.service';\n\n@Component({\n selector: 'app-servizi-mondo',\n templateUrl: './servizi-mondo.component.html',\n styleUrls: ['./servizi-mondo.component.css']\n})\nexport class ServiziMondoComponent implements OnInit {\n\n public listeSedi: Array<{ sedi: Array; paese: string }> = [];\n public lingua: string;\n public pageName: string;\n public loading = true;\n\n public options: any;\n private streetMaps: any;\n private wMaps: any;\n public mapData = [];\n public mapkeys = [];\n public simpleList: Sede[] = [];\n public component: string = null;\n public base_path: string;\n public place: string;\n public index = -1;\n\n public paesiMap = new Map();\n\n constructor(private sedeService: SedeService,\n private seoService: SeoService,\n private multilingueService: MultilinguaService,\n private menuService: MenuService,\n private location: Location,\n public activatedRoute: ActivatedRoute) {\n this.base_path = window.location.pathname;\n }\n\n handleChange(e) {\n // console.log(e);\n const index = e.index;\n const key = this.mapkeys[index];\n const path = this.base_path + '?place=' + key;\n this.simpleList = this.paesiMap.get(key);\n window.history.replaceState({}, '', path);\n }\n\n ngOnInit() {\n this.activatedRoute.data.subscribe(data => {\n this.lingua = data['lang'];\n });\n this.activatedRoute.queryParamMap\n .subscribe(queryParams => {\n this.place = queryParams.get('place');\n if (!this.place) {\n this.place = '';\n }\n });\n this.load();\n }\n\n load() {\n this.activatedRoute.url.subscribe(() => {\n const url = this.location.path().split('/');\n this.pageName = url.pop();\n getOtherLangs(this.multilingueService, this.lingua, this.menuService, this.seoService, this.pageName);\n this.sedeService.search = new Search(Sede);\n this.sedeService.search._sort = 'paese ASC, denominazione ASC';\n this.sedeService.search._.lang = this.lingua;\n this.sedeService.getAllList().subscribe(sedi => {\n // console.log(sedi);\n // create circle for office\n for (let i = 0; i < sedi.length; i++) {\n if (this.paesiMap.has(sedi[i].paese)) {\n const sedixx: Sede[] = this.paesiMap.get(sedi[i].paese);\n sedixx.push(sedi[i]);\n this.paesiMap.set(sedi[i].paese, sedixx);\n } else {\n this.mapkeys.push(sedi[i].paese);\n const sedixx: Sede[] = [];\n sedixx.push(sedi[i]);\n this.paesiMap.set(sedi[i].paese, sedixx);\n }\n\n const mark = marker([sedi[i].latitudine, sedi[i].longitudine], {\n icon: icon({\n iconSize: [25, 41],\n iconAnchor: [13, 41],\n iconUrl: 'leaflet/marker-icon.png',\n shadowUrl: 'leaflet/marker-shadow.png'\n }),\n title: sedi[i].denominazione,\n });\n mark.bindPopup(sedi[i].denominazione);\n this.mapData.push(mark);\n }\n this.simpleList = this.paesiMap.get(this.mapkeys[0]);\n });\n // Define our base layers so we can reference them multiple times\n this.streetMaps = tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {\n detectRetina: true,\n attribution: ''\n });\n this.wMaps = tileLayer('https://maps.wikimedia.org/osm-intl/{z}/{x}/{y}.png', {\n detectRetina: true,\n attribution: ''\n });\n\n this.options = {\n layers: [this.streetMaps, this.wMaps],\n zoom: 3,\n center: latLng([46.879966, 67.726909])\n };\n this.loading = false;\n });\n }\n\n\n}\n","import {Router} from \"@angular/router\";\n\nexport function manageErrorCode(error, msgs?: any[], router?: Router): void {\n if (error.status == 401) {\n if (router) {\n router.navigate(['/logout']);\n } else {\n if (msgs) {\n msgs.push({severity: 'error', summary: 'Errore: ', detail: 'Non autorizzato'});\n }\n }\n } else {\n if (msgs) {\n msgs.push({severity: 'error', summary: 'Errore: ', detail: error});\n }\n }\n}\n","import {Component, Input, OnChanges, OnDestroy, OnInit, SimpleChange, SimpleChanges} from '@angular/core';\nimport {LOADERS} from './ngx-spinner.enum';\n\n@Component({\n selector: 'ngx-spinner',\n templateUrl: 'ngx-spinner.component.html',\n styleUrls: ['ngx-spinner.component.css']\n})\nexport class NgxSpinnerComponent implements OnDestroy, OnInit, OnChanges {\n /**\n * To set backdrop color('rgba(51,51,51,0.8)')\n * Only supports RGBA color format\n * @memberof NgxSpinnerComponent\n */\n @Input() bdColor = 'rgba(51,51,51,0.8)';\n /**\n * To set spinner size\n *\n * @memberof NgxSpinnerComponent\n */\n @Input() size = '';\n /**\n * To set spinner color('#fff')\n *\n * @memberof NgxSpinnerComponent\n */\n @Input() color = '#fff';\n /**\n * To set type of spinner\n *\n * @memberof NgxSpinnerComponent\n */\n @Input() type: string;\n /**\n * To set loading text(false)\n *\n * @memberof NgxSpinnerComponent\n */\n @Input() loadingText = false;\n /**\n * Flag to show/hide spinner\n *\n * @memberof NgxSpinnerComponent\n */\n @Input() showSpinner = false;\n /**\n * Class for spinner\n *\n * @memberof NgxSpinnerComponent\n */\n spinnerClass: string;\n /**\n * Array for spinner divs\n *\n * @memberof NgxSpinnerComponent\n */\n divArray: Array = [];\n /**\n * Counter for div\n *\n * @memberof NgxSpinnerComponent\n */\n divCount = 0;\n\n /**\n * Creates an instance of NgxSpinnerComponent.\n *\n * @memberof NgxSpinnerComponent\n */\n constructor() {\n }\n\n /**\n * Initialization method\n *\n * @memberof NgxSpinnerComponent\n */\n ngOnInit() {\n this.onInputChange();\n }\n\n /**\n * On changes event for input variables\n *\n * @memberof NgxSpinnerComponent\n */\n ngOnChanges(changes: SimpleChanges) {\n const typeChange: SimpleChange = changes.type;\n const sizeChange: SimpleChange = changes.size;\n\n if (typeChange) {\n if (typeof typeChange.currentValue !== 'undefined' && typeChange.currentValue !== typeChange.previousValue) {\n if (typeChange.currentValue !== '') {\n this.type = typeChange.currentValue;\n this.onInputChange();\n }\n }\n }\n\n if (sizeChange) {\n if (typeof sizeChange.currentValue !== 'undefined' && sizeChange.currentValue !== sizeChange.previousValue) {\n if (sizeChange.currentValue !== '') {\n this.size = sizeChange.currentValue;\n this.onInputChange();\n }\n }\n }\n }\n\n /**\n * To get class for spinner\n *\n * @memberof NgxSpinnerComponent\n */\n getClass(type = 'ball-scale-multiple', size = 'large'): string {\n this.divCount = LOADERS[type];\n this.divArray = Array(this.divCount).fill(0).map((x, i) => i);\n let sizeClass = '';\n switch (size.toLowerCase()) {\n case 'small':\n sizeClass = 'la-sm';\n break;\n case 'medium':\n sizeClass = 'la-2x';\n break;\n case 'large':\n sizeClass = 'la-3x';\n break;\n default:\n break;\n }\n return 'la-' + type + ' ' + sizeClass;\n }\n\n /**\n * After input variables chnage event\n *\n * @memberof NgxSpinnerComponent\n */\n onInputChange() {\n this.spinnerClass = this.getClass(this.type, this.size);\n }\n\n /**\n * Component destroy event\n *\n * @memberof NgxSpinnerComponent\n */\n ngOnDestroy() {\n }\n}","export const LOADERS = {\n 'ball-8bits': 16,\n 'ball-atom': 4,\n 'ball-beat': 3,\n 'ball-circus': 5,\n 'ball-climbing-dot': 4,\n 'ball-clip-rotate': 1,\n 'ball-clip-rotate-multiple': 2,\n 'ball-clip-rotate-pulse': 2,\n 'ball-elastic-dots': 5,\n 'ball-fall': 3,\n 'ball-fussion': 4,\n 'ball-grid-beat': 9,\n 'ball-grid-pulse': 9,\n 'ball-newton-cradle': 4,\n 'ball-pulse': 3,\n 'ball-pulse-rise': 5,\n 'ball-pulse-sync': 3,\n 'ball-rotate': 1,\n 'ball-running-dots': 5,\n 'ball-scale': 1,\n 'ball-scale-multiple': 3,\n 'ball-scale-pulse': 2,\n 'ball-scale-ripple': 1,\n 'ball-scale-ripple-multiple': 3,\n 'ball-spin': 8,\n 'ball-spin-clockwise': 8,\n 'ball-spin-clockwise-fade': 8,\n 'ball-spin-clockwise-fade-rotating': 8,\n 'ball-spin-fade': 8,\n 'ball-spin-fade-rotating': 8,\n 'ball-spin-rotate': 2,\n 'ball-square-clockwise-spin': 8,\n 'ball-square-spin': 8,\n 'ball-triangle-path': 3,\n 'ball-zig-zag': 2,\n 'ball-zig-zag-deflect': 2,\n 'cog': 1,\n 'cube-transition': 2,\n 'fire': 3,\n 'line-scale': 5,\n 'line-scale-party': 5,\n 'line-scale-pulse-out': 5,\n 'line-scale-pulse-out-rapid': 5,\n 'line-spin-clockwise-fade': 8,\n 'line-spin-clockwise-fade-rotating': 8,\n 'line-spin-fade': 8,\n 'line-spin-fade-rotating': 8,\n 'pacman': 6,\n 'square-jelly-box': 2,\n 'square-loader': 1,\n 'square-spin': 1,\n 'timer': 1,\n 'triangle-skew-spin': 1\n};","import { Component, OnInit } from \"@angular/core\";\nimport { ContenutoGenerico } from \"../model/contenuto-generico\";\nimport { ContenutoGenericoService } from \"../service/contenuto-generico.service\";\nimport { Search } from \"../common/search\";\nimport { AllegatoService } from \"../service/allegato.service\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Allegato } from \"../model/allegato\";\nimport { MultilinguaService } from \"../service/multilingua.service\";\nimport { MenuService } from \"../service/menu.service\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { Location } from \"@angular/common\";\nimport { SeoService } from \"../service/seo.service\";\nimport { DOCS_REPLACE } from \"../constants/constants\";\n\n@Component({\n selector: \"app-societa-trasparente\",\n templateUrl: \"./societa-trasparente.component.html\",\n})\nexport class SocietaTrasparenteComponent implements OnInit {\n public component: string = null;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public loading = true;\n public lingua: string;\n\n constructor(\n private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private multilingueService: MultilinguaService,\n private location: Location,\n private menuService: MenuService,\n private seoService: SeoService,\n public route: ActivatedRoute\n ) {\n this.element = new ContenutoGenerico();\n }\n\n ngOnInit() {\n this.route.url.subscribe(() => {\n const url = this.location.path().split(\"/\");\n this.component = url.pop();\n this.contenutoService\n .find(this.component)\n .subscribe((societaTrasparente) => {\n this.element = societaTrasparente;\n this.lingua = this.element.lang;\n this.getOtherLangs();\n // this.seoService.addSeo(sostenibilita);\n this.allegatoService\n .find(societaTrasparente.immagine)\n .subscribe((allegato) => {\n if (allegato) {\n this.allegato = allegato;\n this.allegato.path = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.allegato.path);\n }\n this.loading = false;\n });\n });\n });\n }\n\n getOtherLangs() {\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === \"IT\") {\n this.multilingueService.search._.it = this.element.uuid;\n } else if (this.lingua === \"EN\") {\n this.multilingueService.search._.eng = this.element.uuid;\n }\n this.multilingueService.getList().subscribe((link) => {\n // console.log('link trovato: ' + link);\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === \"EN\" && link[0].it) {\n lingue.push(\"IT\");\n }\n if (this.lingua === \"IT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n }\n this.menuService.add(lingue);\n });\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\nimport { ContenutoGenerico } from \"../model/contenuto-generico\";\nimport { ContenutoGenericoService } from \"../service/contenuto-generico.service\";\nimport { Search } from \"../common/search\";\nimport { AllegatoService } from \"../service/allegato.service\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Allegato } from \"../model/allegato\";\nimport { MultilinguaService } from \"../service/multilingua.service\";\nimport { MenuService } from \"../service/menu.service\";\nimport { Multilingua } from \"../model/multilingua\";\nimport { Location } from \"@angular/common\";\nimport { SeoService } from \"../service/seo.service\";\nimport { DOCS_REPLACE } from \"../constants/constants\";\n\n@Component({\n selector: \"app-sostenibilita\",\n templateUrl: \"./sostenibilita.component.html\",\n})\nexport class SostenibilitaComponent implements OnInit {\n public component: string = null;\n public element: ContenutoGenerico;\n public allegato: Allegato;\n public loading = true;\n public lingua: string;\n\n constructor(\n private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private multilingueService: MultilinguaService,\n private location: Location,\n private menuService: MenuService,\n private seoService: SeoService,\n public route: ActivatedRoute\n ) {\n this.element = new ContenutoGenerico();\n }\n\n ngOnInit() {\n this.route.url.subscribe(() => {\n const url = this.location.path().split(\"/\");\n this.component = url.pop();\n this.contenutoService.find(this.component).subscribe((sostenibilita) => {\n this.element = sostenibilita;\n this.lingua = this.element.lang;\n this.getOtherLangs();\n // this.seoService.addSeo(sostenibilita);\n this.allegatoService\n .find(sostenibilita.immagine)\n .subscribe((allegato) => {\n if (allegato) {\n this.allegato = allegato;\n this.allegato.path = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(this.allegato.path);\n }\n this.loading = false;\n });\n });\n });\n }\n\n getOtherLangs() {\n this.multilingueService.search = new Search(Multilingua);\n if (this.lingua === \"IT\") {\n this.multilingueService.search._.it = this.element.uuid;\n } else if (this.lingua === \"EN\") {\n this.multilingueService.search._.eng = this.element.uuid;\n }\n this.multilingueService.getList().subscribe((link) => {\n // console.log('link trovato: ' + link);\n const lingue = [];\n if (link.length > 0) {\n if (this.lingua === \"EN\" && link[0].it) {\n lingue.push(\"IT\");\n }\n if (this.lingua === \"IT\" && link[0].eng) {\n lingue.push(\"EN\");\n }\n }\n this.menuService.add(lingue);\n });\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {StoriaService} from '../service/storia.service';\nimport {AllegatoService} from '../service/allegato.service';\nimport {ActivatedRoute} from '@angular/router';\nimport {Storia} from '../model/storia';\nimport {ContenutoGenericoService} from '../service/contenuto-generico.service';\nimport {ContenutoGenerico} from '../model/contenuto-generico';\nimport {Search} from '../common/search';\nimport {SeoService} from '../service/seo.service';\nimport {DOCS_REPLACE} from '../constants/constants';\n\n@Component({\n selector: 'app-storia',\n templateUrl: './storia.component.html',\n})\nexport class StoriaComponent implements OnInit {\n\n @Input() element: ContenutoGenerico;\n\n public storiaList: Array;\n public componentiCollegati: Array = [];\n public loading = true;\n public lingua: string;\n\n slideConfig = {\n dots: true,\n infinite: false,\n speed: 300,\n slidesToShow: 3,\n slidesToScroll: 3,\n responsive: [\n {\n breakpoint: 1024,\n settings: {\n slidesToShow: 3,\n slidesToScroll: 3,\n infinite: true,\n dots: true\n }\n },\n {\n breakpoint: 600,\n settings: {\n slidesToShow: 2,\n slidesToScroll: 2\n }\n },\n {\n breakpoint: 480,\n settings: {\n slidesToShow: 1,\n slidesToScroll: 1\n }\n }\n // You can unslick at a given breakpoint now by adding:\n // settings: \"unslick\"\n // instead of a settings object\n ]\n };\n\n\n constructor(private storiaService: StoriaService,\n private contenutoService: ContenutoGenericoService,\n private allegatoService: AllegatoService,\n private seoService: SeoService,\n public route: ActivatedRoute) {\n }\n\n ngOnInit() {\n this.lingua = this.element.lang;\n // this.seoService.addSeo(this.element);\n this.storiaService.search._sort = 'ordine ASC';\n this.storiaService.search._.lang = this.lingua;\n this.storiaService.getAllList().subscribe(storiaList => {\n this.storiaList = storiaList;\n if (this.storiaList) {\n for (const storia of this.storiaList) {\n this.allegatoService.find(storia.immagine).subscribe(allegato => {\n if (allegato) {\n storia.path_immagine = DOCS_REPLACE(allegato.uuid);\n this.seoService.setImage(storia.path_immagine);\n }\n });\n }\n }\n this.contenutoService.search = new Search(ContenutoGenerico);\n this.contenutoService.search._.contenitore = this.element.contenitore;\n this.contenutoService.search._sort = 'ordine ASC';\n this.contenutoService.search._.lang = this.lingua;\n this.contenutoService.getAllList().subscribe(componentiCollegati => {\n for (const componente of componentiCollegati) {\n this.componentiCollegati.push(componente);\n }\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n },\n err => {\n this.loading = false;\n this.contenutoService.search = new Search(ContenutoGenerico);\n });\n });\n }\n\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n imgPath: '/admin/'\n};\n\n/*\n * In development mode, to ignore zone related error stack frames such as\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\n * import the following file, but please comment it out in production mode\n * because it will have performance impact when throw error\n */\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.log(err));\n","export default \"\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n \\n\\n\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n \\n\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n
\\n
\\n\\n
\\n\\n
\\n Capitale Sociale € 31.809.451,00 i.v.
Registro Imprese di Parma
e Codice Fiscale 08531760158
PIVA 02144660343\\n
\\n\\n
\\n Share Capital € 31,809,451.00 fully paid-up
Parma Business Register
and Tax Code 08531760158
VAT number 02144660343\\n
\\n\\n
\\n Share Capital € 31,809,451.00 fully paid-up
Parma Business Register and Tax Code 08531760158 - VAT number 02144660343\\n
\\n
\\n\\n
\\n
\\n Servizi Italia Spa
Via S. Pietro 59/B - 43019 Castellina di Soragna (PR) - IT
Tel: (+39) 0524 598511 - Fax: (+39) 0524 598232
\\n sede@si-servizitalia.com - si-servizitalia@postacert.cedacri.it\\n\\n
\\n
\\n\\n
\\n
\\n\\n
    \\n
  • \\n \\n
  • \\n
  • \\n \\n
  • \\n
  • \\n \\n
  • \\n
\\n
\\n
\\n\\n
\\n
\\n\\n \\n
\\n
\\n \\n \\n\\n\\n\\n\";","export default \"\\n
\\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n\\n\\n
\\n\\n
\\n
\\n

{{element?.titolo}}

\\n
\\n
\\n
\\n
\\n\\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{attivita.titolo}}

\\n

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n \\n\\n
\\n\";","export default \"\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n \\n
\\n\\n
\\n \\n
\\n
\";","export default \"
\\n \\n \\n\\n \\n
\\n \\n \\n
\\n
\\n \\n
\\n

{{ banner.titolo }}

\\n

\\n
continua
\\n
\\n
\\n\\n \\n
\\n

{{ banner.titolo }}

\\n

\\n
continua
\\n
\\n \\n
\\n\\n
\\n \\n
\\n

{{ banner.titolo }}

\\n

\\n
continue
\\n
\\n
\\n\\n \\n
\\n

{{ banner.titolo }}

\\n

\\n
continue
\\n
\\n \\n
\\n\\n
\\n \\n
\\n

{{ banner.titolo }}

\\n

\\n
continue
\\n
\\n
\\n\\n \\n
\\n

{{ banner.titolo }}

\\n

\\n
continue
\\n
\\n \\n
\\n \\n\\n\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n\\n
\\n
\\n

\\n

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n
\\n
\\n \\n
\\n

{{element?.sottotitolo}}

\\n

\\n

\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n\\n
\\n
\\n

\\n

\\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n
\\n\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n\\n
\\n
\\n

\\n

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n
\\n
\\n

\\n

\\n = 0\\\" [activeIndex]=\\\"index\\\" (onChange)=\\\"handleChange($event)\\\">\\n \\n {{lista.anno}}\\n \\n
\\n 10\\\" [responsive]=\\\"true\\\" [rows]=\\\"10\\\" [totalRecords]=\\\"lista.documenti?.length\\\" class=\\\"table table-hover\\\">\\n\\n \\n \\n\\n \\n {{ documento.data_pubblicazione | date:'dd/MM/y':'CET'}}\\n \\n {{ getOra(documento.ora_pubblicazione) }}\\n\\n {{documento.titolo}}\\n \\n \\n download\\n\\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n\\n
\\n
\\n

\\n

\\n = 0\\\" [activeIndex]=\\\"index\\\" (onChange)=\\\"handleChange($event)\\\">\\n \\n {{lista.anno}}\\n \\n
\\n 10\\\" [rows]=\\\"10\\\" [totalRecords]=\\\"lista.documenti?.length\\\" class=\\\"table table-hover\\\">\\n\\n \\n \\n\\n \\n {{documento.titolo}}\\n \\n \\n download\\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n\\n
\\n
\\n

\\n

\\n = 0\\\" [activeIndex]=\\\"index\\\" (onChange)=\\\"handleChange($event)\\\">\\n \\n {{lista.anno}}\\n \\n
\\n\\n 10\\\" [responsive]=\\\"true\\\" [rows]=\\\"10\\\" [totalRecords]=\\\"lista.documenti?.length\\\" class=\\\"table table-hover\\\">\\n\\n \\n \\n \\n {{ documento.data_pubblicazione | date:'dd/MM/y':'CET'}}\\n \\n {{documento.titolo}}\\n \\n \\n download\\n\\n \\n \\n \\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n
\\n
\\n {{element?.nomePadre}}
\\n
\\n {{element?.nomePadre}}
\\n \\n
\\n
\\n\\n
\\n
\\n

\\n

\\n
\\n
\\n 10\\\" [rows]=\\\"10\\\" [totalRecords]=\\\"listSize\\\" (onLazyLoad)=\\\"lazyLoad($event)\\\" [lazy]=\\\"true\\\" class=\\\"table table-hover\\\">\\n\\n \\n \\n\\n \\n \\n \\n {{ documento.data_pubblicazione | date:'dd/MM/y':'CET'}}\\n \\n {{documento.titolo}}\\n \\n \\n download\\n \\n \\n \\n \\n\\n
\\n INVIA UNA SEGNALAZIONE\\n
\\n
\\n\\n\\n\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{element?.titolo}}

\\n

{{element?.sottotitolo}}

\\n
\\n \\n
\\n\\n
\\n
\\n

\\n

\\n\\n
\\n\\n
\\n
\\n
\\n \\n
\\n\\n
\\n Title Picture Gallery\\n
\\n
\\n
\\n\\n
\\n \\n
\\n
\\n Title Picture Gallery\\n
\\n
\\n\\n
\\n\\n
\\n \\n
\\n
\\n Title Picture Gallery\\n
\\n
\\n\\n\\n
\\n\\n
\\n \\n
\\n
\\n Title Picture Gallery\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n\\n\\n
\\n\\n
\\n
\\n

{{element?.titolo}}

\\n

\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n

\\n\\n\\n
\\n\\n\\n
\\n\\n
\\n
\\n
\\n\\n\\n
\\n
\\n\\n\\n\\n\";","export default \"
\\n\\n\\n
\\n
\\n
\\n\\n
\\n\\n\\n
\\n

{{ element?.titolo }}

\\n

\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\\n
\\n \\n
\\n\\n\\n
\\n \\n
\\n \\n\\n
\";","export default \"
\\n
\\n
\\n
\\n\\n
\\n

DISCLAIMER


\\n\\n \\n

Questo sito web (e le informazioni ivi contenute) non contiene né costituisce un'offerta di\\n vendita di strumenti finanziari o una sollecitazione di offerta di acquisto di strumenti\\n finanziari negli stati uniti, in australia, canada
\\n o giappone nonché in qualsiasi altro paese in cui tale offerta o sollecitazione sarebbe\\n soggetta all'autorizzazione da parte di autorita' locali o comunque vietata ai sensi di\\n legge (gli \\\"altri paesi\\\"). gli strumenti finanziari
\\n ivi indicati non sono stati e non saranno registrati ai sensi dello u.s. securities act del\\n 1933, come successivamente modificato (il \\\"securities act\\\"), o ai sensi delle corrispondenti\\n normative vigenti negli \\\"altri paesi\\\" e non
\\n possono essere offerti o venduti negli stati uniti o a \\\"u.s. persons\\\" salvo che i titoli\\n siano registrati ai sensi del securities act o in presenza di un'esenzione dalla\\n registrazione applicabile ai sensi del securities act. non
\\n si intende effettuare alcuna offerta al pubblico di tali strumenti finanziari negli stati\\n uniti o negli \\\"altri paesi\\\".

\\n

Conferma che il certificante comprende e accetta il disclaimer sopraesposto\\n

\\n

Questi documenti hanno esclusivamente finalità informative e non sono diretti o destinati\\n all'accesso da parte di persone che si trovano o sono residenti negli Stati Uniti, in\\n Australia, Canada o Giappone o uno degli Altri Paesi. Dichiaro
\\n di non essere soggetto residente o trovarmi negli Stati Uniti, in Australia, Canada o\\n Giappone o uno degli Altri Paesi e di non essere una \\\"US person\\\" (ai sensi della Regulation\\n S del Securities Act). Ho letto e compreso il disclaimer
\\n sopraesposto. Comprendo che può condizionare i miei diritti. Accetto di rispettarne i\\n vincoli. Accetto i termini.
 \\n

\\n NON\\n ACCETTO\\n\\n ACCETTO\\n
\\n \\n

PRIMA DI ACCEDERE ALLE INFORMAZIONI E AI DOCUMENTI CONTENUTI IN QUESTA SEZIONE DEL\\n PRESENTE SITO INTERNET, SI PREGA DI LEGGERE E ACCETTARE L’INFORMATIVA DI SEGUITO\\n RIPORTATA.\\n

\\n

\\n Con riferimento all’offerta pubblica di acquisto volontaria totalitaria (l’“Offerta”)\\n annunciata con comunicato pubblicato, ai sensi dell’art. 102, comma 1, del D.lgs.\\n 58/1998, in data 7 ottobre 2024 da Servizi Italia S.p.A. (l’“Emittente” o “Servizi Italia”)\\n per conto di Cometa S.r.l. (“Cometa” o “Offerente”), promossa dalla medesima Cometa,\\n società interamente controllata, direttamente e indirettamente, rispettivamente, da\\n Aurum S.p.A. e Coopservice soc. coop. p.A. (“Aurum” e “Coopservice”) con sede legale in\\n Reggio Emilia (RE), Via Johannes Gutenberg n. 3, Codice Fiscale, P.IVA e numero di\\n iscrizione al Registro delle Imprese dell’Emilia 03030450351, capitale sociale
\\n interamente sottoscritto e versato pari a Euro 10.000,00 (diconsi diecimila/00), Offerta\\n avente ad oggetto la totalità delle azioni ordinarie circolanti (le “Azioni”) di Servizi Italia\\n S.p.A., diverse (i) da quelle già detenute da Aurum, nonché (ii) da quelle detenute in\\n proprio dall’Emittente, si precisa quanto segue.
\\n L’Offerta sarà promossa esclusivamente in Italia in quanto le azioni dell’Emittente sono\\n quotate esclusivamente su Euronext Milan, mercato regolamentato italiano organizzato\\n e gestito da Borsa Italiana S.p.A. segmento Euronext STAR Milan, ed è soggetta agli\\n obblighi di comunicazione e agli adempimenti procedurali previsti dal diritto italiano.
\\n In\\n particolare, l’Offerta sarà effettuata a mezzo della pubblicazione di un documento di\\n offerta previa approvazione della Commissione Nazionale per le Società e la Borsa -\\n CONSOB (il “Documento di Offerta”). Il Documento di Offerta conterrà l’integrale\\n descrizione dei termini e delle condizioni dell’Offerta, incluse le modalità di adesione.\\n Prima di aderire all’Offerta si raccomanda ai soci di leggere attentamente la\\n documentazione sull’Offerta pubblicata ai sensi di legge.
\\n L’Offerta non è e non sarà promossa negli Stati Uniti d’America (non essendo rivolta a\\n “U.S. Persons”, come definite ai sensi del U.S. Securities Act del 1933 e successive\\n modificazioni), né in Canada, in Giappone e/o in Australia, né in qualsiasi altro paese\\n diverso dall’Italia in cui tale Offerta non sia consentita in assenza di autorizzazione da\\n parte delle competenti autorità o altri adempimenti da parte dell’Offerente
\\n (collettivamente, i “Paesi Esclusi”), né utilizzando strumenti di comunicazione o di\\n commercio nazionale o internazionale dei Paesi Esclusi (ivi inclusi, a titolo
\\n esemplificativo, la rete postale, il fax, la posta elettronica, il telefono e internet), né\\n attraverso qualsivoglia struttura di alcuno degli intermediari finanziari dei Paesi Esclusi,\\n né in alcun altro modo.
\\n L’adesione all’Offerta da parte di soggetti residenti in paesi diversi dall’Italia potrebbe\\n essere soggetta a specifici obblighi o restrizioni previsti da disposizioni di legge o\\n regolamentari. È esclusiva responsabilità dei soggetti che intendono aderire all’Offerta\\n conformarsi a tali norme e, pertanto, prima di aderire all’Offerta, tali soggetti saranno\\n tenuti a verificarne l’esistenza e l’applicabilità, rivolgendosi ai propri consulenti e\\n conformandosi alle disposizioni stesse prima dell’adesione all’Offerta.
\\n Nessuna copia del Documento di Offerta o di porzioni dello stesso, così come nessuna\\n copia di qualsiasi documento relativo all’Offerta medesima, sarà, né potrà essere, inviata,\\n trasmessa o distribuita, direttamente o indirettamente – con qualsivoglia modalità – in\\n qualsiasi o da qualsiasi Paese Escluso in cui le disposizioni della normativa locale\\n possano determinare rischi di natura civile, penale o regolamentare ove informazioni\\n concernenti l’Offerta siano trasmesse o rese disponibili ad azionisti dell’Emittente in tale\\n Paese Escluso o in altri paesi dove tali condotte costituirebbero una violazione delle\\n leggi di tale Paese. Qualsiasi persona che riceva tali documenti (anche solo, a titolo\\n esemplificativo, in qualità di custode, fiduciario o trustee) è tenuta a non inviare,\\n trasmettere, divulgare o distribuire – con qualsivoglia modalità – gli stessi verso o dai\\n Paesi Esclusi.
\\n Questa sezione del presente sito internet, nonché i documenti e/o le informazioni ivi\\n contenute, non costituiscono né possono essere interpretati quale un’offerta, un invito o\\n una sollecitazione a comprare o altrimenti acquisire, sottoscrivere, vendere o altrimenti\\n disporre di strumenti finanziari dell’Emittente nei Paesi Esclusi.
\\n Chiunque intenda accedere alla presente sezione del sito internet dell’Emittente e\\n prendere visione del Documento di Offerta e degli altri documenti ivi pubblicati, deve\\n leggere attentamente e avere piena consapevolezza di quanto sopra riportato.
\\n Selezionando il pulsante “ACCETTO” si dichiara e si garantisce - sotto la propria piena\\n responsabilità - di non essere una US Person, di non trovarsi fisicamente e di non essere\\n residente nei Paesi Esclusi, nonché di aver letto, compreso e accettato integralmente e\\n di impegnarsi a rispettare tutte le limitazioni sopra indicate.\\n

\\n NON\\n ACCETTO\\n\\n ACCETTO\\n
\\n
\\n\\n\\n
\\n \\n

DISCLAIMER


\\n

This website (and the information contained herein) does not contain or constitute an offer\\n of\\n securities for sale, or solicitation of an offer to purchase securities in the US,\\n Australia,\\n Canada or Japan or any other jurisdiction\\n where such an offer or solicitation would require the approval of local authorities or\\n otherwise\\n be unlawful (the \\\"other countries\\\"). the securities referred to herein have not been and\\n will\\n not be registered under the US securities\\n act of 1933, as amended (the \\\"securities act\\\"), or pursuant to the corresponding regulations\\n in\\n force in the \\\"other countries\\\" and may not be offered or sold in the united states or to \\\"US\\n persons\\\" unless the securities are registered\\n under the securities act, or an exemption from the registration requirements of the\\n securities\\n act is available. no public offering of such securities is intended to be made in the united\\n states or in the \\\"other countries\\\".

\\n

Confirmation of Understanding and Acceptance of Disclaimer

\\n

These materials are for informational purposes only and are not directed to, nor are they\\n intended for, access by persons located or resident in the United States, Australia, Canada\\n or\\n Japan or one of the Other Countries. I certify\\n that I am not resident of, or located in, the United States, Australia, Canada or Japan or\\n one\\n of the Other Countries and that I am not a \\\"US person\\\" (as such term is defined in\\n Regulation S\\n under the Securities Act). I have read\\n and understood the disclaimer set out above. I understand that it may affect my rights. I\\n agree\\n to be bound by its terms.

\\n
\\n \\n

BEFORE ACCESSING THE INFORMATION AND DOCUMENTS CONTAINED IN THIS SECTION OF THE WEBSITE,\\n PLEASE READ AND ACCEPT THE TERMS AND CONDITIONS REPORTED HERE BELOW.


\\n

We make reference to the voluntary total voluntary tender offer(offerta pubblica di acquisto\\n volontaria totalitaria) ( (the \\\"Offer\\\") launched by Cometa S.r.l. (the \\\"Offeror\\\"), a wholly\\n owned subsidiary, directly and indirectly, respectively, of Aurum S.p.A. and Coopservice\\n soc. coop. p.A. (\\\"Aurum\\\" and \\\"Coopservice\\\") concerning all the ordinary shares (the\\n \\\"Shares\\\") of Servizi Italia S.p.A. (the \\\"Issuer\\\"), other than those owned by Aurum and the\\n treasury shares held by the Issuer, announced in a press release published, pursuant to\\n Article 102, paragraph 1, of Legislative Decree 58/1998, on November 9, 2023.
\\n The Offer is being launched exclusively in Italy, since the shares of the Issuer are listed\\n exclusively on Euronext Milan, an Italian regulated market organized and managed by Borsa\\n Italiana S.p.A. Euronext STAR Milan segment and is subject to the disclosure obligations and\\n procedural requirements provided for by Italian law. In particular, the Offer will be\\n launched by means of the publication of an offer document subject to the approval of the\\n Italian supervisory financial authority (Commissione Nazionale per le Società e la Borsa -\\n CONSOB) (the \\\"Offer Document\\\"). The Offer Document will contain the full description of the\\n terms and conditions of the Offer, including the terms of acceptance. Before accepting the\\n Offer, the shareholders of the Issuer should read the documents concerning the Offer\\n pursuant to applicable law.
\\n The Offer has not been, and will not be, launched nor disseminated in United States of\\n America (or to \\\"U.S. Persons\\\" as defined under the U.S. Securities Act of 1933 and\\n subsequent amendments), Canada, Japan and Australia, nor in any other country where such an\\n Offer is forbidden without authorization from competent authorities or other fulfilments are\\n required by the Offeror (collectively, the \\\"Excluded Countries\\\"), nor using national or\\n international communication or trade tools of the Excluded Countries (including, by way of\\n example, the postal system, telefax, e-mail, telephone and Internet), nor by way of any\\n office of any of the financial intermediaries of such Excluded Countries, nor in any other\\n manner.
\\n The acceptance of the Offer by parties which are resident in countries other than Italy may\\n be subject to specific obligations or restrictions provided by law or regulatory provisions.\\n Parties who wish to accept the Offer bear the exclusive responsibility to comply with those\\n laws and therefore, prior to accepting the Offer, those parties are required to verify their\\n possible existence and applicability, consulting their own advisors and shall comply with\\n the above-mentioned provisions before accepting the Offer.
\\n No copy of information included in this section of the website or of any other document\\n relating to the Offer shall be, nor may be, sent, nor in any way transmitted, or otherwise\\n distributed, directly or indirectly, in, to or from any Excluded Country in which the\\n provisions of local laws and regulations might give rise to civil, criminal or regulatory\\n risks to the extent that information concerning the Offer is transmitted or made available\\n to shareholders of the Issuer in such Excluded Country or other countries where such conduct\\n would constitute a violation of the laws of such country. Any person receiving such\\n documents (including as custodian, fiduciary or trustee) is required not to post or\\n otherwise transmit or distribute them in, to or from any Excluded Country.
\\n This section of the website as well as the documents and/or the information included in this\\n section of the website does not represent nor does not constitute an offer, invitation or\\n solicitation to buy or otherwise acquire, subscribe, sell or otherwise dispose of financial\\n instruments of the Issuer in any Excluded Country.
\\n Anyone who intends to access this section of the website and view the Offer Document and the\\n other documents published therein, must read carefully and be fully aware of the information\\n above.
\\n By selecting the \\\"I ACCEPT\\\" button you represent and warrant - under your own full\\n responsibility - that you are not a US Person, you are not physically located nor resident\\n in the Other Countries, and that you have read, understood and fully accept and agree to\\n abide by all of the above limitations.

\\n
\\n Don't accept\\n \\n I accept the terms\\n\\n\\n
\\n\\n
\\n
\\n
\\n
\\n\";","export default \"
\\n
\\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n \\n\\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n Invia richiesta\\n \\n\\n \\n Send request\\n \\n\\n \\n Enviar\\n \\n
\\n
\\n

\\n \\n (*) completa le informazioni obbligatorie\\n \\n\\n \\n (*) complete mandatory information\\n \\n\\n \\n (*) completa as informações obrigatórias\\n \\n

\\n
\\n
\\n
\\n
\\n
{{ message }}
\\n\";","export default \"\\n
\\n \\n \\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n\\n
\\n\\n\\n
\\n

{{ element?.titolo }}

\\n

\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

Mission e Valori

\\n

\\n Con l’obiettivo di qualificarsi ai massimi livelli di mercato in termini di sicurezza ed affidabilità dei servizi erogati, Servizi Italia ha implementato una struttura organizzativa atta a comprovare che le attività svolte: struttura organizzativa atta\\n a comprovare che le attività svolte:\\n

\\n
\\n
\\n Scarica\\n Company Profile\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

\\n Mission and Values\\n

\\n

\\n With the aim of qualifying at the highest market levels in terms of safety and reliability of the services provided, Servizi Italia has implemented an organizational structure to prove that the activities carried out:\\n

\\n
\\n
\\n Download our\\n company profile\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

\\n Missão e Valores\\n

\\n

\\n Com o objetivo de se qualificar nos mais altos níveis de mercado em termos de segurança e confiabilidade dos serviços prestados, a Servizi Italia implementou uma estrutura organizacional capaz de comprovar que as atividades realizadas: estrutura organizacional\\n capaz de comprovar que as atividades realizadas:\\n

\\n
\\n
\\n Download our\\n company profile\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\";","export default \"\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n\\n
\\n\\n\\n
\\n

Investors

\\n

Investors

\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\\n\\n\\n
\\n\\n
\\n \\n
\\n\\n\\n
\\n \\n
\\n\\n\\n
\\n\\n
\\n
\\n
\\n
\\n
Comunicati Stampa
\\n
\\n
\\n
\\n
\\n
\\n
\\n
    \\n
  • \\n\\n
    \\n\\n
    \\n\\n
    \\n
    \\n\\n {{ documento.data_pubblicazione | date: \\\"dd\\\":\\\"CET\\\" }}/{{ documento.data_pubblicazione | date: \\\"MM\\\":\\\"CET\\\" }}/{{ documento.data_pubblicazione | date: \\\"yyyy\\\":\\\"CET\\\" }}\\n\\n
    \\n
    \\n

    \\n {{\\n documento.titolo\\n }}\\n

    \\n
    \\n
    \\n \\n\\n
    \\n
    \\n
  • \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\\n\\n
\\n
\\n
\\n
\\n
Press Releases
\\n
\\n
\\n
\\n
\\n
\\n
\\n
    \\n
  • \\n\\n
    \\n\\n
    \\n\\n
    \\n
    \\n\\n {{ documento.data_pubblicazione | date: \\\"dd\\\":\\\"CET\\\" }}/{{ documento.data_pubblicazione | date: \\\"MM\\\":\\\"CET\\\" }}/{{ documento.data_pubblicazione | date: \\\"yyyy\\\":\\\"CET\\\" }}\\n\\n
    \\n
    \\n

    \\n {{\\n documento.titolo\\n }}\\n

    \\n
    \\n
    \\n \\n\\n
    \\n
    \\n
  • \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n \\n \\n
\\n
\\n\\n

Vuoi maggiori informazioni ?

\\n

Scrivici qui

\\n\\n
\\n
\\n\\n
\\n
\\n \\n\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n
\\n\\n

Servizi Italia nel mondo

\\n

\\n Scopri dove siamo

\\n\\n\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n\\n
\\n \\n \\n \\n \\n
\\n
\\n\\n

Any further information ?

\\n

Write us!

\\n\\n
\\n
\\n\\n
\\n
\\n \\n\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n
\\n\\n

Servizi Italia in the world

\\n

\\n Discover where we are

\\n\\n\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n\\n
\\n\\n\\n
\\n

{{ element?.titolo }}

\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n\\n\";","export default \"404\\n\";","export default \"
\\n\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n {{ paese }}\\n \\n \\n \\n \\n \\n \\n \\n
\\n

{{ sede.denominazione }}

\\n {{ sede.descrizione }}
\\n {{ sede.indirizzo }}
\\n {{ sede.contatti }}
\\n {{ sede.email }}
\\n {{ sede.website }}\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n

Servizi Italia nel mondo

\\n

\\n Una piattaforma produttiva altamente tecnologica, con impianti\\n di lavanderia all’avanguardia, centrali di sterilizzazione per\\n tessili e dispositivi medici, guardaroba presso i clienti e\\n impianti di distribuzione automatizzati.\\n

\\n
\\n
\\n

Servizi Italia in the world

\\n

\\n A high-tech production platform, with cutting-edge laundry\\n facilities, CSSDs for textile and medical devices, wardrobes at\\n customers’ sites and automated distribution facilities.\\n

\\n
\\n\\n
\\n

Servizi Italia no mundo

\\n

\\n Uma plataforma de produção altamente tecnológica, com\\n instalações de lavanderia de última geração, centros de\\n esterilização para produtos têxteis e dispositivos médicos,\\n rouparia para clientes e sistemas de distribuição automatizados.\\n

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\";","export default \"
\\n
\\n
\\n\";","export default \"\\n
\\n \\n
\\n
\\n\\n
\\n\\n\\n
\\n
\\n
\\n\\n
\\n\\n\\n
\\n

{{ element?.titolo }}

\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\\n
\\n \\n
\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n\\n\\n\\n
\\n \\n
\\n\\n
\\n\";","export default \"\\n
\\n \\n
\\n
\\n\\n\\n
\\n
\\n
\\n\\n
\\n\\n\\n
\\n

{{ element?.titolo }}

\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n
\\n \\n
\\n\\n\";","export default \"
\\n
\\n
\\n
\\n\\n \\n
\\n
\\n \\n

{{storia.periodo}}

\\n

{{storia.titolo}}

\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n\\n\\n
\\n
\\n\\n
\\n
\\n

{{element.titolo}}

\\n

{{element.sottotitolo}}

\\n
\\n
\\n
\\n {{element?.contenitore}}
\\n
\\n {{element?.titolo}}
\\n \\n
\\n
\\n\\n
\\n
\\n

\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\";"],"names":[],"sourceRoot":"webpack:///"}