{"version":3,"sources":["./src/app/login/reset-password/reset-password.component.ts","./src/app/login/reset-password/reset-password.component.html","./src/app/routes/news/news-detail/news-detail-2.component.ts","./src/app/routes/news/news-detail/news-detail-2.component.html","./src/app/register/register.component.ts","./src/app/register/register.component.html","./src/app/shared/services/http-request.service.ts","./src/app/shared/services/language.service.ts","./src/app/routes/results/results.component.ts","./src/app/routes/results/results.component.html","./src/app/shared/components/dropdown/dropdown.component.ts","./src/app/shared/components/dropdown/dropdown.component.html","./src/app/routes/about-us/about-us.service.ts","./src/app/shared/components/loader/loader.component.ts","./src/app/shared/components/loader/loader.component.html","./src/app/models/consent/consent.model.ts","./src/app/shared/services/mc-language.service.ts","./src/app/shared/components/loader-small/loader.component.ts","./src/app/shared/components/loader-small/loader.component.html","./src/app/routes/terms/terms-model.ts","./src/app/shared/directives/rerender.directive.ts","./src/app/routes/about-us/about-us.model.ts","./src/app/header/profile/profile.component.ts","./src/app/header/profile/profile.component.html","./src/app/routes/news/news-detail/news-detail-4.component.ts","./src/app/routes/news/news-detail/news-detail-4.component.html","./src/app/routes/homepage/homepage-3.component.ts","./src/app/routes/homepage/homepage-3.component.html","./src/app/shared/services/auth-guard.service.ts","./src/environments/environment.ts","./src/app/models/language/language.model.ts","./src/app/shared/helpers/toastr-config.ts","./src/app/header/my-files/my-files.component.ts","./src/app/header/my-files/my-files.component.html","./src/app/error/error.component.ts","./src/app/error/error.component.html","./src/app/header/search-results/search-results.component.ts","./src/app/header/search-results/search-results.component.html","./src/app/shared/components/loginpopup/loginpopup.component.ts","./src/app/shared/components/loginpopup/loginpopup.component.html","./src/app/testimonials/testimonials-model.ts","./src/app/routes/contact/contact.component.ts","./src/app/routes/contact/contact.component.html","./src/app/shared/pipes/shorten.pipe.ts","./src/app/download/download.component.ts","./src/app/download/download.component.html","./src/app/routes/contact/contact-model.ts","./src/app/routes/news/news-model.ts","./src/app/routes/redirect-old/redirect-old.component.ts","./src/app/shared/services/password-check.service.ts","./src/app/shared/components/register-popup/register-popup.component.ts","./src/app/shared/components/register-popup/register-popup.component.html","./src/app/routes/media/media-group/media-group.component.ts","./src/app/routes/media/media-group/media-group.component.html","./src/app/routes/brand-stories/brand-stories.component.ts","./src/app/routes/brand-stories/brand-stories.component.html","./src/app/login/login-model.ts","./src/app/shared/services/login-attempts.service.ts","./src/app/routes/homepage/homepage-2.component.ts","./src/app/routes/homepage/homepage-2.component.html","./src/app/routes/competition-page/competition-page.component.ts","./src/app/routes/competition-page/competition-page.component.html","./src/app/routes/news/article/article.component.ts","./src/app/routes/news/article/article.component.html","./src/app/shared/helpers/buttons-helper.ts","./src/app/shared/components/slider-picture/slider-picture.component.ts","./src/app/shared/components/slider-picture/slider-picture.component.html","./src/app/shared/components/loader-relative/loader.component.ts","./src/app/shared/components/loader-relative/loader.component.html","./src/app/shared/services/my-files-model.ts","./src/app/routes/media/media-model.ts","./src/app/routes/homepage/homepage.component.ts","./src/app/routes/homepage/homepage.component.html","./src/app/routes/contacts/contacts.model.ts","./src/app/routes/contacts/contacts.service.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/shared/debounce/debounce.component.ts","./src/app/shared/debounce/debounce.component.html","./src/app/shared/components/terms-popup/terms-popup.component.ts","./src/app/shared/components/terms-popup/terms-popup.component.html","./src/app/shared/helpers/url-helper.ts","./src/app/shared/services/algolia.service.ts","./src/app/header/profile/profile-model.ts","./src/app/shared/directives/style.directive.ts","./src/app/shared/components/popup/popup.component.ts","./src/app/shared/components/popup/popup.component.html","./src/app/routes/unsubscribe-newsletter/unsubscribe-newsletter.component.ts","./src/app/routes/unsubscribe-newsletter/unsubscribe-newsletter.component.html","./src/app/shared/services/my-files.service.ts","./src/app/routes/brands/brands.component.ts","./src/app/routes/brands/brands.component.html","./src/app/routes/file-history/file-history.component.ts","./src/app/routes/file-history/file-history.component.html","./src/app/routes/news/news.component.ts","./src/app/routes/news/news.component.html","./src/app/shared/pipes/search.pipe.ts","./src/app/app.module.ts","./src/app/register-imported/register-imported.component.ts","./src/app/register-imported/register-imported.component.html","./src/app/routes/about-us/about-us.component.ts","./src/app/routes/about-us/about-us.component.html","./src/app/shared/services/download-box.service.ts","./src/app/routes/brands/brands-model.ts","./src/app/routes/news/news-group/news-group.component.ts","./src/app/routes/news/news-group/news-group.component.html","./src/app/shared/components/embedded-share/embedded-share.component.ts","./src/app/shared/components/embedded-share/embedded-share.component.html","./src/app/layout/layout-model.ts","./src/$_lazy_route_resource lazy namespace object","./src/app/testimonials/testimonials.component.ts","./src/app/testimonials/testimonials.component.html","./src/app/download/download-model.ts","./src/app/shared/components/story-preview/story-preview.component.ts","./src/app/shared/components/story-preview/story-preview.component.html","./src/app/shared/components/media-file/media-file.component.ts","./src/app/shared/components/media-file/media-file.component.html","./src/app/header/search/search.component.ts","./src/app/header/search/search.component.html","./src/app/header/header.component.ts","./src/app/header/header.component.html","./src/app/routes/media/media.component.ts","./src/app/routes/media/media.component.html","./src/app/shared/services/mc-service.ts","./src/app/shared/services/storage.service.ts","./src/app/footer/footer.component.ts","./src/app/footer/footer.component.html","./src/app/social-home/social-home.component.ts","./src/app/social-home/social-home.component.html","./src/app/header/header-2.component.ts","./src/app/header/header-2.component.html","./src/app/header/header-3.component.ts","./src/app/header/header-3.component.html","./src/app/shared/services/webp-helper.service.ts","./src/app/shared/pipes/replace.pipe.ts","./src/app/shared/services/communication.service.ts","./src/app/routes/results/results-search/results-search-model.ts","./src/app/login/reset-password-admin/reset-password-admin.component.ts","./src/app/login/reset-password-admin/reset-password-admin.component.html","./src/app/login/email-popup/email-popup.component.ts","./src/app/login/email-popup/email-popup.component.html","./src/app/shared/services/outbound-link-click-intercept.service.ts","./src/app/login/check-authentication/check-authentication.component.ts","./src/app/login/check-authentication/check-authentication.component.html","./src/app/shared/directives/click-outside.directive.ts","./src/app/shared/components/popup/popup-model.ts","./src/app/shared/services/delete-account.service.ts","./src/app/shared/services/error-service.ts","./src/app/register/register-model.ts","./src/app/shared/services/user-centrics.service.ts","./src/app/shared/services/auth-interceptor.service.ts","./src/app/routes/homepage/home-model.ts","./src/app/routes/results/results-search/results-search.component.ts","./src/app/routes/results/results-search/results-search.component.html","./src/app/routes/news/news-detail/news-detail.component.ts","./src/app/routes/news/news-detail/news-detail.component.html","./src/app/routes/terms/terms.component.ts","./src/app/routes/terms/terms.component.html","./src/app/shared/services/google-analytics-events.service.ts","./src/app/shared/services/token-manager.service.ts","./src/app/shared/services/saved-story.service.ts","./src/app/header/search/search-model.ts","./src/app/models/style/style.model.ts","./src/app/shared/components/share-button/share-button.component.ts","./src/app/shared/components/share-button/share-button.component.html","./src/app/shared/services/fonts-and-colors.service.ts","./src/app/layout/layout.component.ts","./src/app/layout/layout.component.html","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/routes/routes.module.ts","./src/app/routes/news/code-story/code-story.component.ts","./src/app/routes/news/code-story/code-story.component.html","./src/app/shared/components/share/share.component.ts","./src/app/shared/components/share/share.component.html","./src/app/routes/contacts/contacts.component.ts","./src/app/routes/contacts/contacts.component.html","./src/main.ts","./src/app/routes/homepage/homepage-4.component.ts","./src/app/routes/homepage/homepage-4.component.html"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["import { Component, OnInit } from \"@angular/core\";\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { LoginModel, NewPasswordModel } from \"../login-model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { ToastrConfig } from \"../../shared/helpers/toastr-config\";\r\nimport { PasswordCheckService } from \"../../shared/services/password-check.service\";\r\n\r\n@Component({\r\n selector: \"app-reset-password\",\r\n templateUrl: \"./reset-password.component.html\",\r\n styleUrls: [\"./reset-password.component.less\"],\r\n})\r\nexport class ResetPasswordComponent implements OnInit {\r\n valForm: FormGroup;\r\n loader = false;\r\n data = new NewPasswordModel();\r\n patternPassword = /^\\S*$/;\r\n confirmError: boolean;\r\n language: Language;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private languageService: LanguageService,\r\n private toastr: ToastrService,\r\n private activatedRoute: ActivatedRoute,\r\n private authLoginService: TokenManagerService,\r\n private router: Router,\r\n private sService: StorageService,\r\n public checkPasswordService: PasswordCheckService\r\n ) {\r\n this.valForm = this.fb.group({\r\n \"new-password\": [\r\n null,\r\n Validators.compose([\r\n Validators.required,\r\n Validators.pattern(this.patternPassword),\r\n ]),\r\n ],\r\n confirmpassword: [null, Validators.required],\r\n });\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n let userId = params[\"id\"];\r\n this.data.resetCode = userId;\r\n\r\n this.authLoginService.checkPasswordCode(this.data.resetCode).subscribe(\r\n (response: any) => {\r\n\r\n const body: string = response;\r\n\r\n if (body === \"null\") {\r\n\r\n this.toastr.error('Reset link has already been used.', 'Error', ToastrConfig.error);\r\n this.router.navigate([\"./sign-in\"]);\r\n }\r\n },\r\n (error) => { }\r\n );\r\n });\r\n\r\n\r\n // this.authLoginService.checkAuthentication(this.data.resetCode)\r\n // .subscribe(\r\n // (response) => {\r\n //\r\n // }, (error) => {\r\n // const toast: Toast = {\r\n // type: 'error',\r\n // title: 'Error',\r\n // body: 'Reset link has already been used.',\r\n // showCloseButton: true,\r\n // timeout: 5000,\r\n // closeHtml: '
'\r\n // };\r\n //\r\n // this.toasterService.pop(toast);\r\n // this.router.navigate(['./login']);\r\n // }\r\n // );\r\n }\r\n\r\n checkPassword() {\r\n if (\r\n this.valForm.controls[\"new-password\"].value ===\r\n this.valForm.controls[\"confirmpassword\"].value\r\n ) {\r\n this.confirmError = false;\r\n }\r\n }\r\n\r\n isPwFocus: boolean = false;\r\n onPwFocus() {\r\n this.isPwFocus = true;\r\n }\r\n onPwBlur() {\r\n this.isPwFocus = false;\r\n }\r\n\r\n reset(e, data) {\r\n e.stopPropagation();\r\n\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n\r\n if (this.checkPasswordService.hasPasswordHardening() && !this.checkPasswordService.checkAll(data.newPassword)) {\r\n this.toastr.error('Password does not meet the requirements', 'Error', ToastrConfig.error);\r\n return;\r\n }\r\n\r\n if (this.valForm.valid) {\r\n this.loader = true;\r\n this.authLoginService.ResetPassword(data).subscribe(\r\n (response: any) => {\r\n this.toastr.success('Password changed successfully!', 'Well done!', ToastrConfig.success);\r\n const loginModel = new LoginModel();\r\n loginModel.email = response.email;\r\n loginModel.password = data.newPassword;\r\n\r\n this.authLoginService.login(loginModel).subscribe(\r\n (res) => {\r\n this.loader = false;\r\n const loggedUserName = TokenManagerService.getUser().fullName;\r\n // this.isPassowordSet = TokenManagerService.getUser().isPasswordSet;\r\n this.sService.setName(loggedUserName);\r\n // this.sService.setPw(this.isPassowordSet);\r\n this.router.navigate([\"/profile\"]);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n\r\n // this.router.navigate(['/login']);\r\n },\r\n (error) => {\r\n this.toastr.error(error.error.message, 'Error', ToastrConfig.error);\r\n }\r\n );\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n

Reset password

\r\n
\r\n
\r\n \r\n \r\n \r\n New password is required\r\n \r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Number\r\n (0-9)\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Special\r\n Character\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Atleast\r\n 8 Character\r\n
\r\n
\r\n
\r\n X
\r\n \r\n Lowercase\r\n & Uppercase\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n \r\n Passwords\r\n do not match.\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnInit,\r\n HostListener,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../../shared/services/mc-service\";\r\nimport { WebNewsDetailsMediaModel, WebNewsDetailsModel } from \"../news-model\";\r\nimport { Router, ActivatedRoute, Params } from \"@angular/router\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { saveAs } from \"file-saver\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { StorageService } from \"../../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../../shared/helpers/url-helper\";\r\nimport {\r\n SearchModel,\r\n SearchResultModel,\r\n WebSearchModel,\r\n} from \"../../../header/search/search-model\";\r\nimport { TokenManagerService } from \"../../../shared/services/token-manager.service\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../../shared/services/fonts-and-colors.service\";\r\nimport { DownloadAddToModel } from \"../../media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport {\r\n DomSanitizer,\r\n Meta,\r\n MetaDefinition,\r\n Title,\r\n} from \"@angular/platform-browser\";\r\nimport { MyFilesService } from \"../../../shared/services/my-files.service\";\r\nimport { ButtonsHelper } from \"../../../shared/helpers/buttons-helper\";\r\nimport { SavedStoryService } from \"../../../shared/services/saved-story.service\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { WebpHelperService } from \"../../../shared/services/webp-helper.service\";\r\n\r\ndeclare var require: any;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-news-detail-2\",\r\n templateUrl: \"./news-detail-2.component.html\",\r\n styleUrls: [\"./news-detail-2.component.less\"],\r\n})\r\nexport class NewsDetailComponent2 implements OnInit {\r\n urlSubscription: Subscription;\r\n\r\n popup: boolean;\r\n loginPopup: boolean;\r\n media: any[];\r\n\r\n filtered: WebNewsDetailsMediaModel[] = [];\r\n imageMedia: WebNewsDetailsMediaModel[] = [];\r\n audioMedia: WebNewsDetailsMediaModel[] = [];\r\n videoMedia: WebNewsDetailsMediaModel[] = [];\r\n documentMedia: WebNewsDetailsMediaModel[] = [];\r\n cartItems: any[] = [];\r\n image: number[] = [];\r\n video: number[] = [];\r\n audio: number[] = [];\r\n activeSubTab: number;\r\n storyId: number;\r\n url: string;\r\n forDownload: any[] = [];\r\n downloadIds: any[] = [];\r\n blob: any;\r\n loader: boolean;\r\n disabledButton: boolean;\r\n mediaId: number;\r\n autoplay: boolean;\r\n allFiles: number;\r\n share: boolean;\r\n all: boolean;\r\n imageTab: boolean;\r\n videoTab: boolean;\r\n documentTab: boolean;\r\n audioTab: boolean;\r\n user: any;\r\n styles = new PageStyle();\r\n activeAllTab = false;\r\n activeTab = \"all\";\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n activeFb = false;\r\n activeMail = false;\r\n activeTw = false;\r\n activeIn = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n sLng: number;\r\n token: string;\r\n relatedStoriesTabOpened = true;\r\n mediaTabOpened = true;\r\n isMediaUser: boolean;\r\n buttonsHelper = ButtonsHelper;\r\n publisher: string;\r\n\r\n private scrolled25: boolean = false;\r\n private scrolled50: boolean = false;\r\n private scrolled75: boolean = false;\r\n private scrolled90: boolean = false;\r\n private scrolled100: boolean = false;\r\n\r\n webNewsDetailsResponse: WebNewsDetailsModel;\r\n filters: any;\r\n\r\n constructor(\r\n private myFilesService: MyFilesService,\r\n private languageService: LanguageService,\r\n private mcService: McService,\r\n private meta: Meta,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private http: HttpClient,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private sanitizer: DomSanitizer,\r\n private titleService: Title,\r\n private savedStoryService: SavedStoryService,\r\n private storageService: StorageService,\r\n public webPHelperService: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n this.token = localStorage.getItem(\"Token\");\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n activeallC(name) {\r\n if (name == \"all\") {\r\n if (this.activeAllTab) {\r\n this.allActive = true;\r\n } else {\r\n this.activeAllTab = true;\r\n }\r\n } else if (name == \"image\") {\r\n if (this.activeImageTab) {\r\n this.imageActive = true;\r\n } else {\r\n this.activeImageTab = true;\r\n }\r\n } else if (name == \"video\") {\r\n if (this.activeVideoTab) {\r\n this.videoActive = true;\r\n } else {\r\n this.activeVideoTab = true;\r\n }\r\n } else if (name == \"document\") {\r\n if (this.activeDocumentsTab) {\r\n this.docActive = true;\r\n } else {\r\n this.activeDocumentsTab = true;\r\n }\r\n } else if (name == \"audio\") {\r\n if (this.activeAudioTab) {\r\n this.audioActive = true;\r\n } else {\r\n this.activeAudioTab = true;\r\n }\r\n }\r\n }\r\n\r\n activeallCOut(name) {\r\n if (name == \"all\") {\r\n if (!this.allActive) {\r\n this.activeAllTab = false;\r\n }\r\n } else if (name == \"image\") {\r\n if (!this.imageActive) {\r\n this.activeImageTab = false;\r\n }\r\n } else if (name == \"video\") {\r\n if (!this.videoActive) {\r\n this.activeVideoTab = false;\r\n }\r\n } else if (name == \"document\") {\r\n if (!this.docActive) {\r\n this.activeDocumentsTab = false;\r\n }\r\n } else if (name == \"audio\") {\r\n if (!this.audioActive) {\r\n this.activeAudioTab = false;\r\n }\r\n }\r\n }\r\n\r\n showCart() {\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToDownload &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n if (this.cartItems.length > 0) {\r\n this.router.navigateByUrl(\"/download\");\r\n } else {\r\n return;\r\n }\r\n }\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n let niz = new DownloadAddToModel();\r\n niz.storyMediaIds = this.downloadIds;\r\n niz.publishedMediaIds = [];\r\n niz.userId = this.user.id;\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.urlSubscription = this.route.params.subscribe((params: Params) => {\r\n this.getData();\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.urlSubscription.unsubscribe();\r\n }\r\n\r\n getData() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.user = TokenManagerService.getUser();\r\n\r\n if (this.user.role === \"MediaUser\") {\r\n this.isMediaUser = false;\r\n } else if (this.user.role && this.user.role !== \"MediaUser\") {\r\n this.isMediaUser = true;\r\n } else {\r\n this.isMediaUser = false;\r\n }\r\n\r\n this.storyId = +this.router.routerState.snapshot.url.split(\"/\")[2];\r\n this.getNewsDetails();\r\n window.scrollTo(0, 0);\r\n this.popup = false;\r\n this.filtered = this.media;\r\n this.share = false;\r\n this.currentUrl = window.location.href;\r\n\r\n let mediaFromRoute = this.route.snapshot.paramMap.get(\"media\");\r\n if (mediaFromRoute != undefined) {\r\n let tempMedia = { id: mediaFromRoute };\r\n this.openMediaPopup(tempMedia);\r\n }\r\n }\r\n\r\n showSubCategory(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n showSubCategoryRandom(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n getNewsDetails() {\r\n this.loader = true;\r\n if (this.sLng == 0) {\r\n this.sLng = 1;\r\n }\r\n this.mcService\r\n .getNewsDetail(this.storyId, this.sLng, this.isMediaUser)\r\n .subscribe(\r\n (response: any) => {\r\n this.webNewsDetailsResponse = response;\r\n console.log(\"story\", this.webNewsDetailsResponse);\r\n this.titleService.setTitle(response?.storyTitle.substring(0, 65));\r\n this.meta.updateTag({\r\n name: \"keywords\",\r\n content: response?.storyTitle.substring(0, 65),\r\n });\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: response?.shortDescription.substring(0, 100),\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: response?.storyTitle.substring(0, 65),\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: response?.shortDescription.substring(0, 100),\r\n });\r\n\r\n this.webNewsDetailsResponse.alsoMayLike =\r\n this.webNewsDetailsResponse.alsoMayLike.slice(0, 2);\r\n for (const media of this.webNewsDetailsResponse.media) {\r\n media.shareUrl =\r\n UrlHelper.getCurrentUrlHostOnly() +\r\n \"/content-files/\" +\r\n this.webNewsDetailsResponse.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(this.webNewsDetailsResponse.storyTitle) +\r\n \"/\" +\r\n media.id;\r\n //\r\n }\r\n\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToAccess &&\r\n !this.webNewsDetailsResponse.anonymousShare &&\r\n !this.token\r\n ) {\r\n sessionStorage.setItem(\r\n \"redirectUrl\",\r\n \"/\" + window.location.pathname\r\n );\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n\r\n if (this.webNewsDetailsResponse.featuredEmbeddedCode) {\r\n this.webNewsDetailsResponse.embeddedCode =\r\n this.sanitizer.bypassSecurityTrustHtml(\r\n this.webNewsDetailsResponse.featuredEmbeddedCode\r\n );\r\n }\r\n\r\n for (const story of this.webNewsDetailsResponse.alsoMayLike) {\r\n if (story.featuredEmbeddedCode) {\r\n story.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n\r\n if (this.webNewsDetailsResponse.socialSharing != null) {\r\n this.socials = this.webNewsDetailsResponse.socialSharing;\r\n }\r\n\r\n this.allFiles =\r\n this.webNewsDetailsResponse.images +\r\n this.webNewsDetailsResponse.video +\r\n this.webNewsDetailsResponse.document +\r\n this.webNewsDetailsResponse.audio;\r\n this.filtered = response.media;\r\n this.loader = false;\r\n\r\n for (const f of this.filtered) {\r\n if (f.mediaType === \"Audio\" || f.mediaType === \"Video\") {\r\n f.mediaLengthMin = Math.floor(f.mediaLenght / 60);\r\n f.mediaLengthSec = f.mediaLenght - f.mediaLengthMin * 60;\r\n }\r\n }\r\n\r\n this.groupMedia();\r\n\r\n if (localStorage.getItem(\"cart\") != null) {\r\n this.cartItems = JSON.parse(localStorage.getItem(\"cart\"));\r\n }\r\n // this.meta.updateTag({name: 'keywords', content: response.thumbUrl});\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: response.storyTitle,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:text:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:image\",\r\n content: response.thumbUrl,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:card\",\r\n content: \"summary_large_image\",\r\n });\r\n this.meta.updateTag({\r\n property: \"og:image\",\r\n content: response.thumbUrl,\r\n });\r\n this.meta.updateTag({\r\n property: \"og:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n property: \"og:title\",\r\n content: response.storyTitle,\r\n });\r\n setTimeout(() => {\r\n $(\"#bodytext a\").attr(\"target\", \"_blank\");\r\n }, 1000);\r\n\r\n this.filters = [\r\n {\r\n key: \"all\",\r\n text: this.language.allFiles,\r\n faClass: \"fal fa-archive\",\r\n amount: this.allFiles,\r\n },\r\n {\r\n key: \"image\",\r\n text: this.language.imageFiles,\r\n faClass: \"fal fa-camera-retro\",\r\n amount: this.webNewsDetailsResponse.images,\r\n },\r\n {\r\n key: \"video\",\r\n text: this.language.videoFiles,\r\n faClass: \"fal fa-video\",\r\n amount: this.webNewsDetailsResponse.video,\r\n },\r\n {\r\n key: \"document\",\r\n text: this.language.documents,\r\n faClass: \"fal fa-file\",\r\n amount: this.webNewsDetailsResponse.document,\r\n },\r\n {\r\n key: \"audio\",\r\n text: this.language.audioFiles,\r\n faClass: \"fal fa-volume-up\",\r\n amount: this.webNewsDetailsResponse.audio,\r\n },\r\n ];\r\n },\r\n (error2) => {\r\n this.router.navigateByUrl(\"/home\");\r\n //\r\n }\r\n );\r\n }\r\n\r\n groupMedia() {\r\n this.imageMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"image\"\r\n );\r\n this.audioMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"audio\"\r\n );\r\n this.videoMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"video\"\r\n );\r\n this.documentMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"document\"\r\n );\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.autoplay = false;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openMediaPopupAutplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openShare() {\r\n this.share = !this.share;\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.webNewsDetailsResponse.alsoMayLike) {\r\n if (x.storyId === id) {\r\n x.shareDropdown = !x.shareDropdown;\r\n }\r\n }\r\n }\r\n openMediaDropdown(media) {\r\n media.mediaDropdown = !media.mediaDropdown;\r\n event.stopPropagation();\r\n }\r\n\r\n onClickOutside(event: Object, media) {\r\n if (event && event[\"value\"] === true) {\r\n media.mediaDropdown = false;\r\n }\r\n }\r\n\r\n readMore(id) {\r\n window.scrollTo(0, 0);\r\n this.user = TokenManagerService.getUser();\r\n this.storyId = id.staggingStoryId;\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(id.storyTitle),\r\n ]);\r\n this.loader = true;\r\n\r\n this.getNewsDetails();\r\n }\r\n\r\n mediaChecked(media, e) {\r\n e.stopPropagation();\r\n let component = this;\r\n const index = this.forDownload.indexOf(media);\r\n media.checked = !media.checked;\r\n if (component.forDownload.indexOf(media) == -1 && media.checked) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n } else if (!media.checked) {\r\n component.forDownload.splice(index, 1);\r\n component.downloadIds.splice(index, 1);\r\n }\r\n }\r\n\r\n downloadingAll = false;\r\n downloadingImage = false;\r\n downloadingVideo = false;\r\n downloadingDocument = false;\r\n downloadingAudio = false;\r\n\r\n downloadAll(list = null, mediaType) {\r\n if (mediaType == \"all\") this.downloadingAll = true;\r\n else if (mediaType == \"image\") this.downloadingImage = true;\r\n else if (mediaType == \"video\") this.downloadingVideo = true;\r\n else if (mediaType == \"document\") this.downloadingDocument = true;\r\n else if (mediaType == \"audio\") this.downloadingAudio = true;\r\n let component = this;\r\n if (list === null) list = this.filtered;\r\n list.forEach(function (media) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n });\r\n this.download({}, \"text\", mediaType);\r\n }\r\n\r\n sendToCart() {\r\n let component = this;\r\n this.filtered.forEach(function (value) {\r\n if (component.cartItems.indexOf(value.id) == -1 && value.checked) {\r\n component.cartItems.push(value.id);\r\n value.addedToCart = true;\r\n value.checked = false;\r\n component.myFilesService.pushMyFiles(value.id);\r\n }\r\n });\r\n }\r\n\r\n sendAllToCart(list = null) {\r\n let component = this;\r\n if (list === null) list = this.filtered;\r\n list.forEach(function (value) {\r\n if (component.cartItems.indexOf(value.id) == -1) {\r\n component.cartItems.push(value.id);\r\n value.addedToCart = true;\r\n value.checked = false;\r\n component.myFilesService.pushMyFiles(value.id);\r\n }\r\n });\r\n }\r\n\r\n addDownloadClientSide() {\r\n for (const x of this.webNewsDetailsResponse.media) {\r\n for (const y of this.forDownload) {\r\n if (x.downloadLink == y) {\r\n x.downloads++;\r\n }\r\n }\r\n }\r\n }\r\n\r\n download(element, text, mediaType = null) {\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToDownload &&\r\n !this.webNewsDetailsResponse.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n var urls = this.forDownload;\r\n let component = this;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = \"download.zip\";\r\n\r\n if (this.forDownload.length > 1) {\r\n element.textContent = text;\r\n component.disabledButton = true;\r\n urls.forEach(function (url) {\r\n var filename = url.split(\"/\")[8];\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err;\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n\r\n component.disabledButton = false;\r\n element.textContent = \"Download\";\r\n if (mediaType == \"all\") component.downloadingAll = false;\r\n else if (mediaType == \"image\") component.downloadingImage = false;\r\n else if (mediaType == \"video\") component.downloadingVideo = false;\r\n else if (mediaType == \"document\") component.downloadingDocument = false;\r\n else if (mediaType == \"audio\") component.downloadingAudio = false;\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n });\r\n }\r\n });\r\n });\r\n this.addDownloadClientSide();\r\n } else {\r\n for (const x of this.forDownload) {\r\n component.disabledButton = true;\r\n element.textContent = text;\r\n this.http\r\n .get(x, { responseType: \"blob\" })\r\n .toPromise()\r\n .then(\r\n (blob: Blob) => {\r\n let filename = x.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n component.disabledButton = false;\r\n element.textContent = \"Download\";\r\n if (mediaType == \"all\") component.downloadingAll = false;\r\n else if (mediaType == \"image\") component.downloadingImage = false;\r\n else if (mediaType == \"video\") component.downloadingVideo = false;\r\n else if (mediaType == \"document\") component.downloadingDocument = false;\r\n else if (mediaType == \"audio\") component.downloadingAudio = false;\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n },\r\n (error) => { }\r\n );\r\n this.addDownloadClientSide();\r\n }\r\n }\r\n this.forDownload = [];\r\n }\r\n }\r\n\r\n onLogin(state) {\r\n if (state) {\r\n this.download({}, \"text\");\r\n }\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.slice(0, this.currentUrl.lastIndexOf(\"story/\")) +\r\n \"story/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webNewsDetailsResponse.alsoMayLike.find(\r\n (x) => x.staggingStoryId == storyId\r\n ).storyTitle\r\n )\r\n );\r\n }\r\n\r\n getMediaUrl(mediaId: number) {\r\n const currentUrlArray = this.currentUrl.split(\"/\");\r\n if (currentUrlArray.length > 6) {\r\n return window.location.href;\r\n } else {\r\n return window.location.href + \"/\" + mediaId;\r\n }\r\n }\r\n\r\n changeTab(tab: string) {\r\n this.activeTab = tab;\r\n if (tab == \"all\") this.filtered = this.webNewsDetailsResponse.media;\r\n else {\r\n tab = tab.replace(/\\b\\w/g, (l) => l.toUpperCase());\r\n this.filtered = this.webNewsDetailsResponse.media.filter(\r\n (x) => x.mediaType === tab\r\n );\r\n }\r\n }\r\n\r\n scrollToMedias() {\r\n document.getElementById(\"medias\").scrollIntoView();\r\n }\r\n\r\n toggleSavedStory(storyId) {\r\n if (this.inSavedStories(storyId))\r\n this.savedStoryService\r\n .remove(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n else\r\n this.savedStoryService\r\n .add(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n inSavedStories(storyId) {\r\n return this.savedStoryService.inSavedStories(storyId);\r\n }\r\n\r\n @HostListener(\"window:scroll\", [\"$event\"])\r\n onWindowScroll($event) {\r\n var percentage: number = Math.round(this.getScrollPercentage());\r\n if (percentage == 25 && !this.scrolled25) {\r\n this.scrolled25 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 50 && !this.scrolled50) {\r\n this.scrolled50 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 75 && !this.scrolled75) {\r\n this.scrolled75 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 90 && !this.scrolled90) {\r\n this.scrolled90 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 100 && !this.scrolled100) {\r\n this.scrolled100 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n }\r\n\r\n getWindowHeight() {\r\n return (\r\n window.innerHeight ||\r\n document.documentElement.clientHeight ||\r\n document.body.clientHeight ||\r\n 0\r\n );\r\n }\r\n getWindowYscroll() {\r\n return (\r\n window.pageYOffset ||\r\n document.body.scrollTop ||\r\n document.documentElement.scrollTop ||\r\n 0\r\n );\r\n }\r\n getDocHeight() {\r\n return Math.max(\r\n document.body.scrollHeight || 0,\r\n document.documentElement.scrollHeight || 0,\r\n document.body.offsetHeight || 0,\r\n document.documentElement.offsetHeight || 0,\r\n document.body.clientHeight || 0,\r\n document.documentElement.clientHeight || 0\r\n );\r\n }\r\n getScrollPercentage() {\r\n return (\r\n ((this.getWindowYscroll() + this.getWindowHeight()) /\r\n this.getDocHeight()) *\r\n 100\r\n );\r\n }\r\n\r\n searchByCategory(category) {\r\n console.log(category);\r\n this.loader = true;\r\n let searchResultResponse = new SearchResultModel();\r\n const searchModel = new WebSearchModel();\r\n searchModel.languageId = Number(localStorage.getItem(\"lng\"));\r\n searchModel.stories = true;\r\n searchModel.media = false;\r\n searchModel.images = false;\r\n searchModel.video = false;\r\n searchModel.document = false;\r\n searchModel.audio = false;\r\n searchModel.page = 1;\r\n searchModel.pageSize = 12;\r\n if (category.isCustom) {\r\n searchModel.customCategoryIds = [category.id];\r\n } else {\r\n searchModel.mainCategoryIds = [category.id];\r\n }\r\n\r\n this.mcService.searchMcStories(searchModel).subscribe(\r\n (response: any) => {\r\n searchResultResponse = response;\r\n for (const result of searchResultResponse.stories) {\r\n if (result.featuredEmbeddedCode) {\r\n result.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n result.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (\r\n searchResultResponse.mustRegisterToAccess &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.loader = false;\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.storageService.setSearchItemStories(searchResultResponse);\r\n this.storageService.setSearchModel(searchModel);\r\n this.loader = false;\r\n this.router.navigateByUrl(\"/results\");\r\n }\r\n },\r\n (error) => {\r\n searchModel.stories = false;\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
{{ language.storyPublisher }}
\r\n
\r\n {{ webNewsDetailsResponse?.publishedDate | date : \" dd MMMM yyyy\" }}\r\n
\r\n
\r\n
\r\n
{{ language.storyDate }}
\r\n
\r\n {{ webNewsDetailsResponse?.publishedDate | date : \" dd MMMM yyyy\" }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n {{ language.addStoryToFav }}\r\n
\r\n
\r\n \r\n {{ downloadingAll ? language.downloading : 'Download All Media' }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
1 ? 'has-child' : ''\">\r\n
\r\n {{category?.name}}\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ webNewsDetailsResponse?.storyTitle }}\r\n

\r\n

\r\n {{ webNewsDetailsResponse?.shortDescription }}\r\n

\r\n\r\n
\r\n
\r\n
0\">\r\n
\r\n

\r\n {{ language.media }}\r\n
\r\n \r\n \r\n
\r\n

\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.images }} ({{ imageMedia.length }})
\r\n
\r\n {{ downloadingImage ? language.downloading : language.downloadAllImages }}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.videos }} ({{ videoMedia.length }})
\r\n
\r\n {{ downloadingVideo ? language.downloading : language.downloadAllVideos }}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
\r\n {{ language.documents }} ({{ documentMedia.length }})\r\n
\r\n
\r\n {{ downloadingDocument ? language.downloading : language.downloadAllDocuments }}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.audios }} ({{ audioMedia.length }})
\r\n
\r\n {{ downloadingAudio ? language.downloading : language.downloadAllAudios }}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

\r\n {{ language.youMayAlsoLike }}\r\n

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { Component, ElementRef, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { McService } from \"../shared/services/mc-service\";\r\nimport { RegisterModel, UserManageModel } from \"./register-model\";\r\nimport {\r\n FormBuilder,\r\n FormGroup,\r\n Validators,\r\n FormControl,\r\n ValidationErrors,\r\n} from \"@angular/forms\";\r\nimport { CustomValidators } from \"ng2-validation\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport {\r\n FacebookService,\r\n LoginResponse,\r\n LoginOptions,\r\n UIResponse,\r\n UIParams,\r\n FBVideoComponent,\r\n} from \"ngx-facebook\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { LayoutModel } from \"../layout/layout-model\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { PasswordCheckService } from \"../shared/services/password-check.service\";\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ToastrConfig } from \"../shared/helpers/toastr-config\";\r\n\r\n@Component({\r\n selector: \"app-register\",\r\n templateUrl: \"./register.component.html\",\r\n styleUrls: [\"./register.component.less\"],\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n @ViewChild(\"firstCheckBox\") firstCheckBox: ElementRef;\r\n addDropdown: boolean;\r\n termsPopup: boolean;\r\n @Input() dropdownStyle: boolean;\r\n dropdownLabel: string;\r\n dropdownLabel2: string;\r\n dropdownLabel3: string;\r\n patternPassword = /^\\S*$/;\r\n confirmError = false;\r\n facebook = false;\r\n twitter = false;\r\n instagram = false;\r\n linkedin = false;\r\n youtube = false;\r\n wordpress = false;\r\n dropdown = false;\r\n languageDropDown: boolean;\r\n categoryDropdown: boolean;\r\n valForm: FormGroup;\r\n languages: any[] = [];\r\n categories: any[] = [];\r\n mediaUser: boolean;\r\n users: string[] = [];\r\n usersToShow: any[] = [];\r\n allUsers: string[] = [];\r\n termsAndConditions: boolean;\r\n noMediaUserType: boolean;\r\n layoutResponseModel: LayoutModel;\r\n language: Language;\r\n markedAll: boolean;\r\n newsletterTrue = false;\r\n TC = false;\r\n newsLetter = false;\r\n\r\n userFilled: boolean;\r\n\r\n password: any;\r\n confirmPassword: any;\r\n email: any;\r\n styles = new PageStyle();\r\n\r\n registerResponseModel = new RegisterModel();\r\n isFb: boolean;\r\n loader = false;\r\n registerSuccessPopup: boolean;\r\n\r\n twitterRegister: boolean;\r\n twitterAuthorizationVerifier: string;\r\n twitterAuthorizationId: string;\r\n twitterName: string;\r\n showPassword: boolean;\r\n showPasswordConfirm: boolean;\r\n type: string;\r\n typeConfirm: string;\r\n currentPage: number = 1;\r\n showCategories: boolean = true;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private languageService: LanguageService,\r\n private sService: StorageService,\r\n private fb: FormBuilder,\r\n private router: Router,\r\n private fbo: FacebookService,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private activatedRoute: ActivatedRoute,\r\n private checkPasswordService: PasswordCheckService,\r\n private toastr: ToastrService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n this.twitterAuthorizationVerifier = params[\"oauth_verifier\"];\r\n this.twitterAuthorizationId = params[\"authorization_id\"];\r\n this.twitterName = params[\"twitterName\"];\r\n\r\n if (this.twitterAuthorizationId) {\r\n this.twitterRegister = true;\r\n }\r\n });\r\n }\r\n\r\n isPwFocus: boolean = false;\r\n onPwFocus() {\r\n this.isPwFocus = true;\r\n }\r\n onPwBlur() {\r\n this.isPwFocus = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.showCategories = localStorage.getItem(\"hideCategories\") != \"1\";\r\n this.markedAll = true;\r\n this.isFb = false;\r\n this.password = new FormControl(null, [\r\n Validators.required,\r\n Validators.minLength(8),\r\n Validators.maxLength(50),\r\n Validators.pattern(this.patternPassword),\r\n ]);\r\n this.confirmPassword = new FormControl(null, [Validators.required]);\r\n this.email = new FormControl(null, [\r\n CustomValidators.email,\r\n Validators.required,\r\n ]);\r\n\r\n this.sService.getLogin().subscribe((term) => {\r\n this.layoutResponseModel = term;\r\n });\r\n\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.getRegister();\r\n } else {\r\n this.router.navigateByUrl(\"/\");\r\n }\r\n\r\n if (this.layoutResponseModel.disableRegistration) {\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n this.valForm = this.fb.group({\r\n firstname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n lastname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n telephone: [null],\r\n confirmPassword: [null],\r\n password: [\r\n null,\r\n Validators.compose([\r\n Validators.maxLength(50),\r\n Validators.minLength(8),\r\n Validators.pattern(this.patternPassword),\r\n ]),\r\n ],\r\n newsletter: [null],\r\n terms: [null, Validators.compose([Validators.required])],\r\n mediaUserTypeOther: [null],\r\n facebook: [null],\r\n twitter: [null],\r\n instagram: [null],\r\n linkedin: [null],\r\n youtube: [null],\r\n wordpress: [null],\r\n });\r\n\r\n this.addDropdown = false;\r\n this.dropdownLabel = \"Select media category\";\r\n this.dropdownLabel2 = \"Select categories\";\r\n this.dropdownLabel3 = \"Select your languages\";\r\n this.showPassword = false;\r\n this.showPasswordConfirm = false;\r\n this.type = \"password\";\r\n this.typeConfirm = \"password\";\r\n }\r\n\r\n visiblePassword(): void {\r\n this.showPassword = !this.showPassword;\r\n this.type = this.showPassword ? \"text\" : \"password\";\r\n }\r\n\r\n visiblePasswordConfirm(): void {\r\n this.showPasswordConfirm = !this.showPasswordConfirm;\r\n this.typeConfirm = this.showPasswordConfirm ? \"text\" : \"password\";\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.languageDropDown = false;\r\n }\r\n }\r\n\r\n onClickOutsideCategory(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.categoryDropdown = false;\r\n }\r\n }\r\n\r\n onClickOutsideUser(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.mediaUser = false;\r\n }\r\n }\r\n\r\n loginTwitter(e) {\r\n window.location.href =\r\n environment.apiUrl + \"/MediaCenterUser/RegisterWithTwitter\";\r\n }\r\n\r\n private handleError(error) {\r\n console.error(\"Error processing action\", error);\r\n }\r\n\r\n loginPage() {\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n\r\n getRegister() {\r\n this.mcService.getRegister().subscribe(\r\n (response: any) => {\r\n this.registerResponseModel = response;\r\n this.registerResponseModel.mediaUserModel = new UserManageModel();\r\n this.categories = this.registerResponseModel.customCatogories;\r\n this.registerResponseModel.mediaUserModel.customCategoryIds =\r\n this.registerResponseModel.customCatogories.map((x) => x.id);\r\n this.registerResponseModel.customCatogories.forEach(\r\n (x) => (x.marked = true)\r\n );\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n addLanguage(lang, event) {\r\n const index = this.registerResponseModel.mediaUserModel.languageIds.indexOf(\r\n lang.id\r\n );\r\n lang.checked = !lang.checked;\r\n if (lang.checked) {\r\n this.registerResponseModel.mediaUserModel.languageIds.push(lang.id);\r\n this.languages.push(lang.label);\r\n } else {\r\n this.registerResponseModel.mediaUserModel.languageIds.splice(index, 1);\r\n this.languages.splice(index, 1);\r\n }\r\n\r\n if (event) {\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n }\r\n\r\n changeColor(event) {\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n\r\n addCategory(category, event) {\r\n let index =\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.indexOf(\r\n category.id\r\n );\r\n category.marked = !category.marked;\r\n if (category.marked) {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.push(\r\n category.id\r\n );\r\n if (\r\n this.categories.length ==\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.length\r\n )\r\n this.markedAll = true;\r\n } else {\r\n this.markedAll = false;\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.splice(\r\n index,\r\n 1\r\n );\r\n }\r\n }\r\n\r\n selectAll(event) {\r\n this.markedAll = event.target.checked;\r\n if (this.markedAll) {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds =\r\n this.registerResponseModel.customCatogories.map((x) => x.id);\r\n this.registerResponseModel.customCatogories.forEach(\r\n (x) => (x.marked = true)\r\n );\r\n } else {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds = [];\r\n this.registerResponseModel.customCatogories.forEach(\r\n (x) => (x.marked = false)\r\n );\r\n }\r\n }\r\n\r\n addUser(user, event) {\r\n event.stopPropagation();\r\n const index = this.users.indexOf(user.id);\r\n user.checked = !user.checked;\r\n\r\n if (user.checked) {\r\n this.users.push(user.id);\r\n this.usersToShow.push(user.id);\r\n this.noMediaUserType = true;\r\n } else {\r\n this.users.splice(index, 1);\r\n this.usersToShow.splice(index, 1);\r\n }\r\n if (this.users.length == 0) {\r\n this.noMediaUserType = false;\r\n }\r\n\r\n this.registerResponseModel.mediaUserModel.mediaUserTypes = this.users;\r\n console.log(this.registerResponseModel.mediaUserModel.mediaUserTypes);\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n\r\n checkIfEmpty() {\r\n if (this.email.value === \"\") {\r\n this.email.markAsTouched();\r\n }\r\n }\r\n\r\n openAddDropdown() {\r\n this.addDropdown = !this.addDropdown;\r\n }\r\n\r\n checkPassword() {\r\n if (this.password.value === this.confirmPassword.value) {\r\n this.confirmError = false;\r\n }\r\n }\r\n\r\n setConfirmError() {\r\n if (this.password.value !== this.confirmPassword.value) {\r\n this.confirmError = true;\r\n }\r\n\r\n if (this.password.value === \"\") {\r\n this.confirmError = false;\r\n }\r\n }\r\n\r\n register() {\r\n this.loader = true;\r\n this.mcService\r\n .register(this.registerResponseModel.mediaUserModel)\r\n .subscribe(\r\n (response) => {\r\n this.loader = false;\r\n // this.router.navigateByUrl('/sign-in', {replaceUrl: true});\r\n this.registerSuccessPopup = true;\r\n this.valForm.reset();\r\n },\r\n (error) => {\r\n //\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n\r\n newsletterCheck(event) {\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter = true;\r\n this.newsLetter = !this.newsLetter;\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n if (!this.newsLetter) {\r\n this.valForm.controls[\"terms\"].setValidators(Validators.required);\r\n this.newsletterTrue = false;\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter = false;\r\n } else {\r\n this.newsletterTrue = true;\r\n }\r\n }\r\n\r\n dontWantNewsletter(event) {\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter = false;\r\n this.newsLetter = !this.newsLetter;\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n this.firstCheckBox.nativeElement.style.backgroundColor = \"\";\r\n\r\n if (this.newsLetter) {\r\n this.firstCheckBox.nativeElement.style.backgroundColor =\r\n this.styles.style.mainIdentifyingColor;\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter = true;\r\n }\r\n }\r\n\r\n termsCheck(event) {\r\n this.registerResponseModel.mediaUserModel.termsAndConditions =\r\n !this.registerResponseModel.mediaUserModel.termsAndConditions;\r\n this.termsAndConditions = !this.termsAndConditions;\r\n if (!this.termsAndConditions) {\r\n this.valForm.controls[\"terms\"].setValidators(Validators.required);\r\n this.TC = false;\r\n } else {\r\n this.TC = true;\r\n }\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n\r\n toggleDropdown() {\r\n this.dropdown = !this.dropdown;\r\n }\r\n\r\n isUserTypeOtherSelected() {\r\n return this.registerResponseModel?.mediaUserModel?.mediaUserTypes?.includes(\r\n \"Other\"\r\n );\r\n }\r\n\r\n onSubmit(e) {\r\n e.stopPropagation();\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n this.email.markAsTouched();\r\n this.password.markAsTouched();\r\n this.confirmPassword.markAsTouched();\r\n\r\n if (!this.registerResponseModel.mediaUserModel.mediaUserTypes) {\r\n this.userFilled = false;\r\n }\r\n\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter =\r\n this.newsletterTrue;\r\n this.registerResponseModel.mediaUserModel.termsAndConditions = this.TC;\r\n if (\r\n this.valForm.valid &&\r\n this.password.valid &&\r\n this.confirmPassword.valid &&\r\n this.email.valid &&\r\n this.termsAndConditions &&\r\n this.noMediaUserType &&\r\n this.registerResponseModel.mediaUserModel.mediaUserTypes\r\n ) {\r\n\r\n if (!this.checkPasswordService.hasPasswordHardening() || this.checkPasswordService.hasPasswordHardening() && this.checkPasswordService.checkAll(this.password.value)) {\r\n this.register();\r\n } else {\r\n this.toastr.error(\"Password does not meet the requirements\", 'Oh Snap!', ToastrConfig.error);\r\n }\r\n } else {\r\n Object.keys(this.valForm.controls).forEach((key) => {\r\n const controlErrors: ValidationErrors = this.valForm.get(key).errors;\r\n if (controlErrors != null) {\r\n Object.keys(controlErrors).forEach((keyError) => {\r\n console.log(\r\n \"Key control: \" +\r\n key +\r\n \", keyError: \" +\r\n keyError +\r\n \", err value: \",\r\n controlErrors[keyError]\r\n );\r\n });\r\n }\r\n });\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n {{ language.signIn }}\r\n

\r\n

\r\n {{ language.register }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.firstNameRequired }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.lastNameRequired }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.emailNameRequired }}\r\n Must be a valid\r\n email address\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \"Show\r\n \"Hide\r\n
\r\n \r\n \r\n Password is required\r\n \r\n {{ language.max50Characters }}\r\n \r\n {{ language.min4Characters }}\r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Number\r\n (0-9)\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Special\r\n Character\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Atleast\r\n 8 Character\r\n
\r\n
\r\n
\r\n X
\r\n \r\n Lowercase\r\n & Uppercase\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \"Show\r\n \"Hide\r\n
\r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n {{ language.passwordsNoMatch }}\r\n
\r\n
\r\n \r\n
\r\n Users\r\n
\r\n \r\n
{{ user }}{{ isLast ? \"\" : \", \" }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{ user.name }}
\r\n
\r\n
\r\n
\r\n
\r\n {{ language.mediaUserTypeRequired }}\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n {{ language.categories }}\r\n
\r\n \r\n
\r\n {{ cat.label }}{{ isLast ? \"\" : \", \" }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
All
\r\n
\r\n
\r\n \r\n
\r\n {{ category.label }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{ language.languages }}\r\n
\r\n \r\n
{{ lang }}{{ isLast ? \"\" : \", \" }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ lang.label }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n {{\r\n registerResponseModel?.registrationInfoModel\r\n ?.registerTermsQuestion\r\n }}\r\n
\r\n
\r\n \r\n You must read the Terms and Conditions first\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { StorageService } from './storage.service';\r\n\r\n\r\n\r\n// import {TokenManagerService} from './token-login.service';\r\nimport { Router } from '@angular/router';\r\nimport { HttpClient, HttpErrorResponse, HttpHandler, HttpHeaders } from '@angular/common/http';\r\n\r\nimport { ErrorService } from \"./error-service\";\r\nimport { ToastrConfig } from '../helpers/toastr-config';\r\n\r\n@Injectable()\r\nexport class HttpRequestService {\r\n\r\n\r\n constructor(private http: HttpClient, private toastr: ToastrService, private errorService: ErrorService, private router: Router, private storageService: StorageService) {\r\n }\r\n\r\n handleError(error: any, url: string, data?: any, noErrorToast?: boolean, handleError: boolean = true) {\r\n\r\n if (error.status && error.status === 401 && handleError) {\r\n localStorage.removeItem('Token');\r\n localStorage.removeItem('User')\r\n sessionStorage.removeItem('mustRegister');\r\n this.storageService.setName(\"\");\r\n this.router.navigate(['sign-in']);\r\n return observableThrowError(\"Login required.\");\r\n }\r\n\r\n let errMsg: any;\r\n errMsg = error.error.message ? error.error.message : error.toString();\r\n\r\n if (errMsg === 'User does not exist!' && handleError) {\r\n localStorage.removeItem('Token');\r\n localStorage.removeItem('User')\r\n sessionStorage.removeItem('mustRegister');\r\n this.storageService.setName(\"\");\r\n this.router.navigate(['sign-in']);\r\n return;\r\n }\r\n\r\n //\r\n\r\n let headerFooter = null;\r\n if (localStorage.getItem('headerfooter'))\r\n headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n\r\n if (error.status >= 500 && headerFooter && headerFooter.customErrorRedirect && handleError) {\r\n let action = url;\r\n if (data) {\r\n action = url + '---' + JSON.stringify(data);\r\n }\r\n\r\n this.errorService.setError({\r\n action: action,\r\n message: errMsg\r\n });\r\n this.router.navigate(['/error']);\r\n\r\n return observableThrowError(errMsg);\r\n }\r\n\r\n if (!noErrorToast) {\r\n this.toastr.error(errMsg, 'Oh Snap!', ToastrConfig.error);\r\n }\r\n\r\n return observableThrowError(errMsg);\r\n }\r\n\r\n get(url: string, showSuccessToast?: boolean, toastMessage?: string, noErrorToast?: boolean) {\r\n const result = this.http.get(url).pipe(\r\n map((response: Response) => {\r\n if (showSuccessToast) {\r\n this.toastr.success(toastMessage ? toastMessage : 'Operation successful.', 'Well Done!', ToastrConfig.success);\r\n }\r\n return response;\r\n }),\r\n catchError((response) => this.handleError(response, url, null, noErrorToast)));\r\n return result;\r\n }\r\n\r\n post(url: string, request: any, showSuccessToast?: boolean, toastMessage?: string, noErrorToast?: boolean, handleError: boolean = true) {\r\n const result = this.http.post(url, request).pipe(\r\n map((response: Response) => {\r\n if (showSuccessToast) {\r\n this.toastr.success(toastMessage ? toastMessage : 'Operation successful.', 'Well Done!', ToastrConfig.success);\r\n }\r\n return response;\r\n }),\r\n catchError((response) => this.handleError(response, url, request, noErrorToast, handleError)));\r\n return result;\r\n }\r\n\r\n delete(url: string, showSuccessToast?: boolean, toastMessage?: string, noErrorToast?: boolean) {\r\n const result = this.http.delete(url).pipe(\r\n map((response: Response) => {\r\n if (showSuccessToast) {\r\n this.toastr.success(toastMessage ? toastMessage : 'Operation successful.', 'Well Done!', ToastrConfig.success);\r\n }\r\n if (response == null) {\r\n return null;\r\n }\r\n\r\n return response;\r\n }),\r\n catchError((response) => this.handleError(response, url, null, noErrorToast)));\r\n return result;\r\n }\r\n\r\n put(url: string, request: any, showSuccessToast?: boolean, toastMessage?: string, noErrorToast?: boolean) {\r\n const result = this.http.put(url, request).pipe(\r\n map((response: Response) => {\r\n if (showSuccessToast) {\r\n this.toastr.success(toastMessage ? toastMessage : 'Operation successful.', 'Well Done!', ToastrConfig.success);\r\n }\r\n\r\n return response;\r\n }),\r\n catchError((response) => this.handleError(response, url, request, noErrorToast)));\r\n return result;\r\n }\r\n\r\n postMultipart(url: string, data: any, files: File[], showSuccessToast?: boolean, toastMessage?: string, noErrorToast?: boolean) {\r\n const formData: FormData = new FormData();\r\n formData.append('data', JSON.stringify(data));\r\n for (const file of files) {\r\n formData.append(file.name, file);\r\n }\r\n const result = this.http.post(url, formData).pipe(\r\n map((response: Response) => {\r\n // if (response == null) {\r\n // return null;\r\n // } else {\r\n\r\n if (showSuccessToast) {\r\n this.toastr.success(toastMessage ? toastMessage : 'Operation successful.', 'Well Done!', ToastrConfig.success);\r\n }\r\n\r\n return response;\r\n // }\r\n }),\r\n catchError((response) => this.handleError(response, url, data, noErrorToast)));\r\n return result;\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Language} from '../../models/language/language.model';\r\nimport {Subject} from \"rxjs\";\r\n\r\n@Injectable()\r\nexport class LanguageService {\r\n\r\n public languageId: Subject = new Subject();\r\n public language: Subject = new Subject();\r\n\r\n pageLanguage: Language;\r\n\r\n constructor() {\r\n }\r\n\r\n getLanguage() {\r\n if (!this.pageLanguage)\r\n this.pageLanguage = new Language();\r\n\r\n return this.pageLanguage;\r\n }\r\n\r\n\r\n setLanguageId(languageId: number) {\r\n localStorage.setItem('lng', languageId.toString());\r\n this.languageId.next(languageId);\r\n }\r\n\r\n setLanguage(pageLanguage: Language) {\r\n this.pageLanguage = pageLanguage;\r\n this.language.next(pageLanguage);\r\n }\r\n\r\n}\r\n","import { Component, HostListener, NgZone, OnInit } from \"@angular/core\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Location } from \"@angular/common\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../../shared/services/my-files.service\";\r\nimport { WebNewsModel } from \"../news/news-model\";\r\nimport { AlgoliaService } from \"../../shared/services/algolia.service\";\r\nimport { WebManageMediaModel } from \"../../download/download-model\";\r\nimport {\r\n SearchResultModel,\r\n AlgoliaNewsRecords,\r\n AlgoliaMediaRecords,\r\n} from \"../../header/search/search-model\";\r\nimport { MyFilesModel } from \"../../shared/services/my-files-model\";\r\n\r\n@Component({\r\n selector: \"app-results\",\r\n templateUrl: \"./results.component.html\",\r\n styleUrls: [\"./results.component.less\"],\r\n})\r\nexport class ResultsComponent implements OnInit {\r\n buttonsHelper = ButtonsHelper;\r\n resultStories: any;\r\n resultMedia: any = [];\r\n autoplay: boolean;\r\n mediaId: number;\r\n popup: boolean;\r\n loader: boolean;\r\n storyId: number;\r\n addDropdown: boolean;\r\n user: any;\r\n headerFooter: any;\r\n styles = new PageStyle();\r\n socials: string[] = [];\r\n currentUrl: string;\r\n language: Language;\r\n mediaTop: number;\r\n pageStories = 1;\r\n pageSizeStories = 12;\r\n maxPageStories = 1;\r\n totalCountStories: number;\r\n searchResults: number;\r\n isPublished: boolean = false;\r\n grid: string;\r\n itemsPerPage = 12;\r\n newsHeadlineLength: number = 120;\r\n pageMedia = 1;\r\n pageSizeMedia = 12;\r\n maxPageMedia = 1;\r\n totalCountMedia: number;\r\n searchModel: any;\r\n loaderMedia = true;\r\n loaderStory = true;\r\n lazyLoadingLoader = false;\r\n showingStories = true;\r\n showLoadMore = true;\r\n cart: MyFilesModel = new MyFilesModel([], []);\r\n storyGroups: WebNewsModel[][] = [[]];\r\n mediaGroups: WebManageMediaModel[][] = [[]];\r\n searchResultStories = new SearchResultModel();\r\n searchResultMedia = new SearchResultModel();\r\n resultId: number;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private languageService: LanguageService,\r\n private storageService: StorageService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private location: Location,\r\n private route: ActivatedRoute,\r\n private sanitizer: DomSanitizer,\r\n private http: HttpClient,\r\n ngZone: NgZone,\r\n private myFilesService: MyFilesService,\r\n private algoliaService: AlgoliaService\r\n ) {\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cart = myFiles;\r\n });\r\n this.newsHeadlineLength = 90;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 12;\r\n }\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n this.resultId = +id;\r\n if (media) {\r\n this.openPopup(+media);\r\n }\r\n });\r\n\r\n this.route.queryParams.subscribe((params) => {\r\n this.isPublished = params[\"isPublished\"];\r\n if (this.isPublished === undefined) this.isPublished = false;\r\n console.log(\"published\", this.isPublished);\r\n if (this.isPublished) {\r\n this.openPopup(this.resultId);\r\n }\r\n });\r\n\r\n window.onresize = (e) => {\r\n ngZone.run(() => {\r\n this.getDimensions();\r\n });\r\n };\r\n }\r\n\r\n @HostListener(\"window:scroll\", [\"$event\"])\r\n onScroll(event) {\r\n if (\r\n window.innerHeight + window.scrollY >= document.body.offsetHeight - 300 &&\r\n !this.lazyLoadingLoader\r\n ) {\r\n this.loadMore();\r\n }\r\n }\r\n\r\n loadMore() {\r\n if (\r\n this.searchModel.stories &&\r\n this.searchModel.page < this.maxPageStories\r\n ) {\r\n this.searchModel.page++;\r\n this.lazyLoadingLoader = true;\r\n this.changePageStories(this.searchModel.page);\r\n } else if (\r\n this.searchModel.media &&\r\n this.searchModel.page < this.maxPageMedia\r\n ) {\r\n this.searchModel.page++;\r\n this.lazyLoadingLoader = true;\r\n this.changePageMedia(this.searchModel.page);\r\n }\r\n }\r\n\r\n addToMyFiles(media) {\r\n let component = this;\r\n if (component.cart.isInMyFiles(media.id, this.isPublished)) {\r\n component.myFilesService.pushMyFiles(media.id, this.isPublished);\r\n }\r\n }\r\n\r\n download(media) {\r\n media.downloading = true;\r\n this.getMediaDetail(media);\r\n }\r\n\r\n getMediaDetail(media) {\r\n let language = Number(localStorage.getItem(\"lng\"));\r\n let mediaDetailResponseModel;\r\n this.mcService.getMediaDetail(media.id, language, this.isPublished).subscribe(\r\n (response: any) => {\r\n mediaDetailResponseModel = response;\r\n if (\r\n mediaDetailResponseModel.mustRegisterToAccess &&\r\n !mediaDetailResponseModel.anonymousShare &&\r\n !localStorage.getItem(\"Token\")\r\n ) {\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n if (mediaDetailResponseModel.downloadLinks.length > 0) {\r\n this.downloadMedia(\r\n mediaDetailResponseModel.downloadLinks[0],\r\n mediaDetailResponseModel,\r\n media\r\n );\r\n }\r\n },\r\n (error) => {\r\n media.downloading = false;\r\n //\r\n }\r\n );\r\n }\r\n\r\n downloadMedia(download, mediaDetailResponseModel, media) {\r\n const iOS =\r\n !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);\r\n\r\n if (iOS) {\r\n try {\r\n (window as any).webkit.messageHandlers.downloadClicked.postMessage({\r\n url: download.downloadUrl,\r\n });\r\n } catch (err) {\r\n media.downloading = false;\r\n }\r\n\r\n return;\r\n }\r\n const component = this;\r\n download.downloadActive = true;\r\n this.http.get(download.downloadUrl, { responseType: \"blob\" }).subscribe(\r\n (blob: Blob) => {\r\n const filename = download.downloadUrl.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n media.downloading = false;\r\n if (component.user.cmsUser == null) {\r\n component.addDownload(media.id);\r\n }\r\n },\r\n (error) => {\r\n media.downloading = false;\r\n }\r\n );\r\n }\r\n\r\n addDownload(mediaId) {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n let niz: any = {};\r\n niz.mediaIds = [mediaId];\r\n niz.userId = this.user.id;\r\n niz.mediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n showStories() {\r\n if (!this.searchModel.stories || true) {\r\n this.searchModel.stories = true;\r\n this.searchModel.media = false;\r\n this.storageService.setSearchModel(this.searchModel);\r\n if (this.searchResultStories.stories.length == 0) {\r\n this.searchMc();\r\n }\r\n }\r\n }\r\n\r\n showMedia() {\r\n if (!this.searchModel.media || true) {\r\n this.searchModel.stories = false;\r\n this.searchModel.media = true;\r\n this.storageService.setSearchModel(this.searchModel);\r\n if (this.searchResultMedia.media.length == 0) {\r\n this.searchMc();\r\n }\r\n }\r\n }\r\n\r\n async searchMc() {\r\n if (this.searchModel.stories) {\r\n this.loaderStory = true;\r\n this.searchModel.languageId = Number(localStorage.getItem(\"lng\"));\r\n this.searchModel.page = 1;\r\n this.searchModel.pageSize = 12;\r\n\r\n const response = await this.algoliaService.searchStories(\r\n this.searchModel.searchText,\r\n this.searchModel.page\r\n );\r\n const hits: AlgoliaNewsRecords[] = response.hits;\r\n this.searchResultStories.stories = hits\r\n .map((hit) => AlgoliaNewsRecords.convertToWebNewsModel(hit))\r\n .filter((story) => story?.fullHDUrl || story?.thumbUrl);\r\n this.maxPageStories = response.nbPages;\r\n for (const result of this.searchResultStories.stories) {\r\n if (result.featuredEmbeddedCode) {\r\n result.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n result.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.checkMustBeRegistered(\r\n this.searchResultStories?.mustRegisterToAccess\r\n );\r\n this.storageService.setSearchModel(this.searchModel);\r\n }\r\n\r\n if (this.searchModel.media) {\r\n this.loaderMedia = true;\r\n this.searchModel.page = 1;\r\n this.searchModel.pageSize = 12;\r\n\r\n const response = await this.algoliaService.searchMedia(\r\n this.searchModel.searchText,\r\n this.searchModel.page\r\n );\r\n const hits: AlgoliaMediaRecords[] = response.hits;\r\n this.searchResultMedia.media = hits.map((hit) =>\r\n AlgoliaMediaRecords.convertToWebManageMediaModel(hit)\r\n );\r\n this.maxPageMedia = response.nbPages;\r\n this.checkMustBeRegistered(this.searchResultMedia?.mustRegisterToAccess);\r\n this.storageService.setSearchModel(this.searchModel);\r\n }\r\n\r\n this.resultStories = this.searchResultStories;\r\n this.resultMedia = this.searchResultMedia;\r\n }\r\n\r\n checkMustBeRegistered(mustRegisterToAccess) {\r\n if (\r\n mustRegisterToAccess === true &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.loader = false;\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n if (this.searchModel.media)\r\n this.storageService.setSearchItemMedia(this.searchResultMedia);\r\n else this.storageService.setSearchItemStories(this.searchResultStories);\r\n this.loader = false;\r\n }\r\n }\r\n\r\n updateMedia(e) {\r\n for (const media of this.resultMedia.media) {\r\n if (media.id === e.id) {\r\n media.downloads = e.downloads;\r\n media.shares = e.shares;\r\n media.views = e.views;\r\n }\r\n }\r\n }\r\n\r\n openPopup(id: number) {\r\n this.popup = true;\r\n this.mediaId = id;\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.getDimensions();\r\n }\r\n\r\n ngOnInit() {\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.loaderMedia = true;\r\n this.loaderStory = true;\r\n this.headerFooter = JSON.parse(localStorage.getItem(\"headerfooter\"));\r\n if (this.headerFooter != null && this.headerFooter != undefined) {\r\n this.headerFooter.headerLinks.forEach((x) => (x.active = false));\r\n this.headerFooter.footerLinks.forEach((x) => (x.active = false));\r\n }\r\n this.storageService.getSearchModel().subscribe((searchModel) => {\r\n this.searchModel = searchModel;\r\n });\r\n\r\n this.user = TokenManagerService.getUser();\r\n\r\n this.storageService.getSearchItemStories().subscribe((term) => {\r\n //aca agarro nuevos resultados de busqueda desde el search, entonces arranco de 0\r\n this.resultStories = term;\r\n this.searchResultStories = term;\r\n if (this.resultStories.maxPages)\r\n this.maxPageStories = this.resultStories.maxPages;\r\n // if (!this.resultStories?.stories) {\r\n this.storyGroups = [[]];\r\n // }\r\n this.groupStories();\r\n this.loaderStory = false;\r\n });\r\n\r\n this.storageService.getSearchItemMedia().subscribe((term) => {\r\n //aca agarro nuevos resultados de busqueda desde el search, entonces arranco de 0\r\n this.resultMedia = term;\r\n this.searchResultMedia = term;\r\n if (this.resultMedia.maxPages)\r\n this.maxPageMedia = this.resultMedia.maxPages;\r\n // if (!this.resultMedia?.media) {\r\n this.mediaGroups = [[]];\r\n // }\r\n this.groupMedia();\r\n this.loaderMedia = false;\r\n });\r\n }\r\n\r\n groupStories() {\r\n let count = 0;\r\n if (this.searchResultStories?.stories || this.resultStories?.stories)\r\n for (const story of this.resultStories?.stories) {\r\n if (this.storyGroups[count].length >= 4) count++;\r\n if (!this.storyGroups[count]) this.storyGroups[count] = [];\r\n this.storyGroups[count].push(story);\r\n }\r\n }\r\n\r\n groupMedia() {\r\n let count = 0;\r\n if (this.searchResultMedia?.media || this.resultMedia?.media)\r\n for (const media of this.resultMedia?.media) {\r\n if (this.mediaGroups[count].length >= 4) count++;\r\n if (!this.mediaGroups[count]) this.mediaGroups[count] = [];\r\n this.mediaGroups[count].push(media);\r\n }\r\n }\r\n\r\n getDimensions() {\r\n const mediaPosition = document.getElementById(\r\n \"media-wrapper\"\r\n ) as HTMLElement;\r\n this.mediaTop = mediaPosition?.offsetTop;\r\n if (window.outerWidth < 768) {\r\n this.searchResults = 6;\r\n } else {\r\n this.searchResults = 10;\r\n }\r\n }\r\n\r\n showSubCategory(news) {\r\n news.subCategory = !news.subCategory;\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.replace(\"results\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.resultStories.stories.find((x) => x.staggingStoryId == storyId)\r\n .storyTitle\r\n )\r\n );\r\n }\r\n\r\n readMore(id) {\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.resultStories.stories.find(\r\n (x) => x.staggingStoryId == id.staggingStoryId\r\n ).storyTitle\r\n ),\r\n ]);\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.resultStories.stories) {\r\n if (x.storyId === id) {\r\n x.dropdown = !x.dropdown;\r\n }\r\n }\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.autoplay = false;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n this.location.replaceState(media.relativeShareUrl);\r\n }\r\n\r\n openMediaPopupAutplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n this.location.replaceState(media.relativeShareUrl);\r\n }\r\n\r\n async changePageStories(page) {\r\n this.pageStories = page;\r\n this.searchModel.page = page;\r\n const response = await this.algoliaService.searchStories(\r\n this.searchModel.searchText,\r\n this.searchModel.page\r\n );\r\n const hits: AlgoliaNewsRecords[] = response.hits;\r\n this.searchResultStories.stories = hits.map((hit) =>\r\n AlgoliaNewsRecords.convertToWebNewsModel(hit)\r\n );\r\n this.maxPageStories = response.nbPages;\r\n\r\n if (this.resultStories.socialSharing != null) {\r\n this.socials = this.resultStories.socialSharing;\r\n }\r\n this.resultStories.stories = this.resultStories.stories.concat(\r\n response.stories\r\n );\r\n this.groupStories();\r\n this.lazyLoadingLoader = false;\r\n }\r\n\r\n async changePageMedia(page) {\r\n this.pageMedia = page;\r\n this.searchModel.page = page;\r\n\r\n const response = await this.algoliaService.searchMedia(\r\n this.searchModel.searchText,\r\n this.searchModel.page\r\n );\r\n const hits: AlgoliaMediaRecords[] = response.hits;\r\n this.searchResultMedia.media = hits.map((hit) =>\r\n AlgoliaMediaRecords.convertToWebManageMediaModel(hit)\r\n );\r\n this.maxPageMedia = response.nbPages;\r\n\r\n if (response.media) {\r\n for (let f of response.media) {\r\n if (f.mediaType === \"Audio\" || f.mediaType === \"Video\") {\r\n f.mediaLengthMin = Math.floor(f.mediaLenght / 60);\r\n f.mediaLengthSec = f.mediaLenght - f.mediaLengthMin * 60;\r\n }\r\n }\r\n }\r\n\r\n if (response.socialSharing != null) {\r\n this.socials = response.socialSharing;\r\n }\r\n if (response.media != undefined) {\r\n const niz = response.media;\r\n for (const x of niz) {\r\n if (x.mediaType === \"Document\") {\r\n x.thumbUrl = \"assets/images/document_default.png\";\r\n } else if (x.mediaType === \"Audio\") {\r\n x.thumbUrl = \"assets/images/audio_default.png\";\r\n }\r\n }\r\n this.resultMedia.media = this.resultMedia.media.concat(response.media);\r\n }\r\n this.groupMedia();\r\n this.lazyLoadingLoader = false;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n

\r\n {{ language.searchForTerm }}\r\n

\r\n

\r\n {{ language.searchResults || \"Showing results for:\" }} \"{{\r\n searchModel?.searchText\r\n }}\"\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{ language.news }}\r\n
\r\n
\r\n {{ language.media }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n

\r\n {{ language.searchNoResults }}\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n

\r\n {{ language.searchNoResults }}\r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import {Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-dropdown',\r\n templateUrl: './dropdown.component.html',\r\n styleUrls: ['./dropdown.component.less']\r\n})\r\nexport class DropdownComponent implements OnInit {\r\n @Input() dropdownLabel: string;\r\n @ViewChild ('dropDownList') dropDownList: ElementRef;\r\n @ViewChild ('dropdownPop') dropdownPop: ElementRef;\r\n @Output() filtered = new EventEmitter();\r\n @Input() dropdownSize: string;\r\n @Input() dropdownStyle: boolean;\r\n @Input() sourceList: any;\r\n\r\n dropdown = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event['value'] === true) {\r\n this.dropdown = false;\r\n }\r\n }\r\n\r\n toggleDropdown() {\r\n this.dropdown = !this.dropdown;\r\n }\r\n\r\n changeLabel(s) {\r\n this.dropdownLabel = s.label;\r\n this.filtered.emit(s);\r\n // this.filtered = this.sourceList.filter(x => x.id === s.id);\r\n\r\n }\r\n}\r\n","
\r\n {{dropdownLabel}}\r\n
\r\n
\r\n {{s.label}}\r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpRequestService } from '../../shared/services/http-request.service';\r\n\r\n@Injectable()\r\nexport class AboutService {\r\n\r\n constructor(private http: HttpRequestService) {\r\n }\r\n\r\n private mediaCenterWebAboutUsUrl = environment.apiUrl + '/MediaCenterWeb/MediaCenterWebAboutUs';\r\n\r\n mediaCenterWebAboutUs() {\r\n return this.http.get(this.mediaCenterWebAboutUsUrl);\r\n }\r\n\r\n}\r\n","import { Component, Input, NgZone, OnInit } from \"@angular/core\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { TokenManagerService } from \"../../services/token-manager.service\";\r\nimport { StorageService } from \"../../services/storage.service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { McService } from \"../../services/mc-service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { FontsAndColorsService } from \"../../services/fonts-and-colors.service\";\r\n\r\n@Component({\r\n selector: \"app-loader\",\r\n templateUrl: \"./loader.component.html\",\r\n styleUrls: [\"./loader.component.less\"],\r\n})\r\nexport class LoaderComponent implements OnInit {\r\n @Input()\r\n blockScroll: boolean = true;\r\n\r\n styles = new PageStyle();\r\n user: any;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private http: HttpClient,\r\n ngZone: NgZone,\r\n private sService: StorageService,\r\n private fontsAndColorsService: FontsAndColorsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n }\r\n\r\n ngOnInit() {\r\n this.user = TokenManagerService.getUser();\r\n if (this.blockScroll) {\r\n window.scrollTo(0, 0);\r\n document.body.classList.add(\"noScroll\");\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.blockScroll) document.body.classList.remove(\"noScroll\");\r\n }\r\n\r\n setColor(e) {\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","export class Consent {\r\n public facebookSocialPlugins: boolean = false;\r\n public googleAnalytics: boolean = false;\r\n public googleFonts: boolean = false;\r\n public googleMaps: boolean = false;\r\n public googleTagManager: boolean = false;\r\n public UsercentricsConsentManagementPlatform: boolean = false;\r\n public jquery: boolean = false;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Subject } from \"rxjs\";\r\n\r\n@Injectable()\r\nexport class MCLanguageService {\r\n public language: Subject = new Subject();\r\n\r\n mcLanguage: any = null;\r\n\r\n constructor() {}\r\n\r\n getMCLanguage() {\r\n // if (!this.mcLanguage)\r\n // this.pageLanguage = new Language();\r\n return this.mcLanguage;\r\n }\r\n\r\n setMCLanguage(mcLanguage: Language) {\r\n this.mcLanguage = mcLanguage;\r\n this.language.next(mcLanguage);\r\n }\r\n}\r\n","import { Component, Input, NgZone, OnInit } from \"@angular/core\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { TokenManagerService } from \"../../services/token-manager.service\";\r\nimport { StorageService } from \"../../services/storage.service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { McService } from \"../../services/mc-service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { FontsAndColorsService } from \"../../services/fonts-and-colors.service\";\r\n\r\n@Component({\r\n selector: \"app-loadersmall\",\r\n templateUrl: \"./loader.component.html\",\r\n styleUrls: [\"./loader.component.less\"],\r\n})\r\nexport class LoadersmallComponent implements OnInit {\r\n @Input() class = \"\";\r\n styles = new PageStyle();\r\n user: any;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private http: HttpClient,\r\n ngZone: NgZone,\r\n private sService: StorageService,\r\n private fontsAndColorsService: FontsAndColorsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n }\r\n\r\n ngOnInit() {\r\n // this.getStyle();\r\n this.user = TokenManagerService.getUser();\r\n //window.scrollTo(0, 0);\r\n }\r\n\r\n setColor(e) {\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n });\r\n }\r\n\r\n // getStyle() {\r\n // this.mcService.getStyle()\r\n // .subscribe((response) => {\r\n // //\r\n // this.styles = response;\r\n //\r\n // },\r\n // (error) => {\r\n // //\r\n // });\r\n // }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","export class TermsModel {\r\n public terms: string;\r\n public condition: string;\r\n public mustRegisterToAccess: boolean;\r\n}\r\n","import {\r\n Directive,\r\n Input,\r\n TemplateRef,\r\n ViewContainerRef\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[rerender]'\r\n})\r\nexport class RerenderDirective {\r\n constructor(\r\n private templateRef: TemplateRef,\r\n private viewContainer: ViewContainerRef\r\n ) { }\r\n\r\n @Input() set rerender(val) {\r\n this.viewContainer.clear();\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n }\r\n}","import { UrlsModel } from \"../../models/links/urls.model\";\r\n\r\nexport class AboutUsModel {\r\n public aboutUsH1Text: string;\r\n public aboutUsH2Text: string;\r\n public aboutUsH3Text: string;\r\n public aboutUsText: string;\r\n public aboutUsFinalText: string;\r\n public aboutUsQuoteText: string;\r\n public aboutUsSignature: string;\r\n public aboutUsBeforeStoreButtonsText: string;\r\n public aboutUsAfterStoreButtonsText: string;\r\n public aboutUsHeroImageUrl: string;\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n public aboutUsLinks: UrlsModel[];\r\n public ourTeam: TeamModel[];\r\n\r\n constructor() {\r\n this.aboutUsH1Text = '';\r\n this.aboutUsH2Text = '';\r\n this.aboutUsH3Text = '';\r\n this.aboutUsQuoteText = '';\r\n this.aboutUsSignature = '';\r\n this.aboutUsText = '';\r\n this.aboutUsHeroImageUrl = '';\r\n this.aboutUsAfterStoreButtonsText = '';\r\n this.aboutUsBeforeStoreButtonsText = '';\r\n }\r\n}\r\nexport class TeamModel {\r\n public name: string;\r\n public position: string;\r\n public thumbUrl: string;\r\n}\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {CustomValidators} from 'ng2-validation';\r\nimport {McService} from '../../shared/services/mc-service';\r\nimport {FormBuilder, FormGroup, Validators} from '@angular/forms';\r\nimport {TokenManagerService} from '../../shared/services/token-manager.service';\r\nimport {ProfileModel, UserManageModel} from './profile-model';\r\nimport {StorageService} from '../../shared/services/storage.service';\r\nimport {FontsAndColorsService} from '../../shared/services/fonts-and-colors.service';\r\nimport {PageStyle} from '../../models/style/style.model';\r\nimport {Language} from \"../../models/language/language.model\";\r\nimport {LanguageService} from \"../../shared/services/language.service\";\r\n\r\n@Component({\r\n selector: 'app-profile',\r\n templateUrl: './profile.component.html',\r\n styleUrls: ['./profile.component.less']\r\n})\r\nexport class ProfileComponent implements OnInit {\r\n\r\n addDropdown: boolean;\r\n isPasswordSet: boolean;\r\n\r\n @Input() dropdownStyle: boolean;\r\n dropdownLabel: string;\r\n dropdownLabel2: string;\r\n dropdownLabel3: string;\r\n list: string[];\r\n list2: string[];\r\n list3: string[];\r\n patternPassword = /^\\S*$/;\r\n confirmError = false;\r\n facebook = false;\r\n twitter = false;\r\n instagram = false;\r\n linkedin = false;\r\n youtube = false;\r\n loader: boolean;\r\n wordpress = false;\r\n dropdown = false;\r\n languageDropDown: boolean;\r\n categoryDropdown: boolean;\r\n valForm: FormGroup;\r\n userId: number;\r\n categories: any[] = [];\r\n languages: any[] = [];\r\n updateMessage: string;\r\n oldPassword: boolean;\r\n showPw: boolean;\r\n enterPw: boolean;\r\n mediaUser: boolean;\r\n users: any[] = [];\r\n allUsers: string[] = [];\r\n userType: string[] = [];\r\n usersToShow: any[] = [];\r\n noMediaUserType: boolean;\r\n styles = new PageStyle();\r\n language: Language;\r\n userFilled: boolean;\r\n userFilledValid: boolean;\r\n\r\n registerResponseModel = new ProfileModel();\r\n\r\n constructor(private mcService: McService, private fb: FormBuilder,private languageService: LanguageService, private sService: StorageService, public fontsAndColorsService: FontsAndColorsService) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.userId = TokenManagerService.getUser().id;\r\n this.isPasswordSet = TokenManagerService.getUser().isPasswordSet;\r\n // this.sService.getPw().subscribe(term => {\r\n // this.isPasswordSet = term;\r\n // });\r\n this.getUpdate();\r\n this.valForm = this.fb.group({\r\n 'firstname': [null, Validators.compose([Validators.required, Validators.maxLength(50)])],\r\n 'lastname': [null, Validators.compose([Validators.required, Validators.maxLength(50)])],\r\n 'telephone': [null],\r\n 'newsletter': [null],\r\n 'confirmPassword': [null],\r\n 'oldPassword': [null],\r\n 'facebook': [null],\r\n 'twitter': [null],\r\n 'instagram': [null],\r\n 'linkedin': [null],\r\n 'youtube': [null],\r\n 'wordpress': [null],\r\n 'password': [null, Validators.compose([Validators.maxLength(50), Validators.minLength(8), Validators.pattern(this.patternPassword)])],\r\n 'email': [null, Validators.compose([Validators.required, CustomValidators.email])],\r\n 'company': [null]\r\n });\r\n\r\n // this.valForm.controls['firstname'].setValidators(Validators.required);\r\n // this.valForm.controls['lastname'].setValidators(Validators.required);\r\n // this.valForm.controls['email'].setValidators(Validators.required);\r\n // this.valForm.controls['password'].setValidators(Validators.compose([Validators.maxLength(50), Validators.minLength(4), Validators.pattern(this.patternPassword)]));\r\n // this.valForm.updateValueAndValidity();\r\n\r\n\r\n this.addDropdown = false;\r\n this.dropdownLabel = 'Select media category';\r\n this.dropdownLabel2 = 'Select categories';\r\n this.dropdownLabel3 = 'Select your languages';\r\n this.list = ['dummy', 'dumyy'];\r\n this.list2 = ['dummy', 'dumyy'];\r\n this.list3 = ['dummy', 'dumyy'];\r\n }\r\n\r\n getUpdate() {\r\n this.loader = true;\r\n this.mcService.getUpdate(this.userId)\r\n .subscribe((response: any) => {\r\n this.registerResponseModel = response;\r\n this.loader = false;\r\n this.userType = this.registerResponseModel.mediaUserModel.mediaUserTypes;\r\n\r\n for (const x of this.registerResponseModel.userGroups) {\r\n for (const y of this.userType) {\r\n if (x.id === y) {\r\n x.checked = true;\r\n this.usersToShow.push(x.id);\r\n this.users.push(x.id);\r\n }\r\n }\r\n }\r\n this.allUsers = this.users;\r\n if (this.registerResponseModel.mediaUserModel.facebookLink != '' && this.registerResponseModel.mediaUserModel.facebookLink !== undefined) {\r\n this.facebook = true;\r\n }\r\n if (this.registerResponseModel.mediaUserModel.twitterLink != '' && this.registerResponseModel.mediaUserModel.twitterLink !== undefined) {\r\n this.twitter = true;\r\n }\r\n if (this.registerResponseModel.mediaUserModel.instagramLink != '' && this.registerResponseModel.mediaUserModel.instagramLink !== undefined) {\r\n this.instagram = true;\r\n }\r\n if (this.registerResponseModel.mediaUserModel.youTubeLink != '' && this.registerResponseModel.mediaUserModel.youTubeLink !== undefined) {\r\n this.youtube = true;\r\n }\r\n if (this.registerResponseModel.mediaUserModel.linkedInLink != '' && this.registerResponseModel.mediaUserModel.linkedInLink !== undefined) {\r\n this.linkedin = true;\r\n }\r\n if (this.registerResponseModel.mediaUserModel.wordPressLink != '' && this.registerResponseModel.mediaUserModel.wordPressLink !== undefined) {\r\n this.wordpress = true;\r\n }\r\n for (const x of this.registerResponseModel.mediaUserModel.languageIds) {\r\n for (const y of this.registerResponseModel.languages) {\r\n if (x === y.id) {\r\n y.checked = true;\r\n this.languages.push(y.label);\r\n }\r\n }\r\n }\r\n for (const x of this.registerResponseModel.mediaUserModel.customCategoryIds) {\r\n for (const y of this.registerResponseModel.customCatogories) {\r\n if (x === y.id) {\r\n y.marked = true;\r\n this.categories.push(y.label);\r\n }\r\n }\r\n\r\n }\r\n\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n\r\n addLanguage(lang) {\r\n const index = this.registerResponseModel.mediaUserModel.languageIds.indexOf(lang.id);\r\n lang.checked = !lang.checked;\r\n if (lang.checked) {\r\n this.registerResponseModel.mediaUserModel.languageIds.push(lang.id);\r\n this.languages.push(lang.label);\r\n }\r\n else {\r\n this.registerResponseModel.mediaUserModel.languageIds.splice(index, 1);\r\n this.languages.splice(index, 1);\r\n }\r\n }\r\n\r\n addCategory(category, event) {\r\n const index = this.registerResponseModel.mediaUserModel.customCategoryIds.indexOf(category.id);\r\n category.marked = !category.marked;\r\n if (category.marked) {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.push(category.id);\r\n this.categories.push(category.label);\r\n }\r\n else {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.splice(index, 1);\r\n this.categories.splice(index, 1);\r\n }\r\n if (event) {\r\n event.target.style.backgroundColor = event.target.checked ? this.styles.style.mainIdentifyingColor : '';\r\n }\r\n }\r\n\r\n\r\n addUser(user, event) {\r\n event.stopPropagation();\r\n const index = this.users.indexOf(user.id);\r\n user.checked = !user.checked;\r\n\r\n\r\n if (user.checked) {\r\n this.users.push(user.id);\r\n this.usersToShow.push(user.id);\r\n this.noMediaUserType = true;\r\n this.userFilled = true;\r\n }\r\n else {\r\n this.users.splice(index, 1);\r\n this.usersToShow.splice(index, 1);\r\n }\r\n if (this.users.length == 0) {\r\n this.noMediaUserType = false;\r\n }\r\n this.registerResponseModel.mediaUserModel.mediaUserTypes = this.users;\r\n event.target.style.backgroundColor = event.target.checked ? this.styles.style.mainIdentifyingColor : '';\r\n\r\n }\r\n\r\n\r\n\r\n // addUser(user) {\r\n // const index = this.registerResponseModel.userGroups.indexOf(user);\r\n // user.checked = !user.checked;\r\n // if (user.checked) {\r\n // this.users.push(user.id);\r\n // this.usersToShow.push(user.id);\r\n // this.allUsers.push(user.id);\r\n // }\r\n // else {\r\n // let indexOfUsers = -1;\r\n // for (let i = 0; i < this.users.length; i++) {\r\n // if (this.users[i] == index + 1) {\r\n // indexOfUsers = i;\r\n // break;\r\n // }\r\n // }\r\n // if (indexOfUsers !== -1) {\r\n // this.users.splice(indexOfUsers, 1);\r\n // this.usersToShow.splice(indexOfUsers, 1);\r\n // }\r\n // }\r\n\r\n // if (this.users.length == 0) {\r\n // this.noMediaUserType = false;\r\n // }\r\n // this.registerResponseModel.mediaUserModel.mediaUserTypes = this.allUsers;\r\n // }\r\n\r\n checkIfEmpty() {\r\n if (this.valForm.controls['email'].value.length === 0) {\r\n this.valForm.controls['email'].setValidators(Validators.required);\r\n }\r\n this.valForm.controls['email'].setValidators(CustomValidators.email);\r\n }\r\n\r\n openAddDropdown() {\r\n this.addDropdown = !this.addDropdown;\r\n }\r\n\r\n checkPassword() {\r\n if (this.valForm.controls['password'].value === this.valForm.controls['confirmPassword'].value) {\r\n this.confirmError = false;\r\n }\r\n\r\n }\r\n\r\n ifEmpty() {\r\n if (this.valForm.controls['oldPassword'].value != '') {\r\n this.showPw = true;\r\n this.enterPw = false;\r\n }\r\n if (this.valForm.controls['password'].value === '' && this.valForm.controls['oldPassword'].value != '') {\r\n this.oldPassword = true;\r\n }\r\n\r\n if (this.valForm.controls['oldPassword'].value == '' || this.valForm.controls['oldPassword'].value == null) {\r\n this.enterPw = false;\r\n }\r\n\r\n if (this.valForm.controls['oldPassword'].value == '' || this.valForm.controls['oldPassword'].value == null) {\r\n this.oldPassword = false;\r\n }\r\n }\r\n\r\n setConfirmError() {\r\n if (this.valForm.controls['password'].value !== this.valForm.controls['confirmPassword'].value) {\r\n this.confirmError = true;\r\n }\r\n if (this.valForm.controls['password'].value !== '' && this.valForm.controls['oldPassword'].value != '') {\r\n this.oldPassword = false;\r\n }\r\n if (this.valForm.controls['password'].value == '' && this.valForm.controls['oldPassword'].value != '') {\r\n this.oldPassword = true;\r\n }\r\n if (this.valForm.controls['password'].value !== '' && this.valForm.controls['oldPassword'].value == '') {\r\n this.enterPw = true;\r\n }\r\n\r\n // if (this.valForm.controls['password'].value === '') {\r\n // this.confirmError = false;\r\n // }\r\n\r\n }\r\n\r\n update() {\r\n window.scrollTo(0, 0);\r\n this.mcService.update(this.registerResponseModel.mediaUserModel)\r\n .subscribe((response) => {\r\n\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n\r\n newsletterCheck() {\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter = !this.registerResponseModel.mediaUserModel.receiveNewsletter;\r\n }\r\n\r\n toggleDropdown() {\r\n this.dropdown = !this.dropdown;\r\n }\r\n\r\n onSubmit(e) {\r\n e.stopPropagation();\r\n if (this.valForm.controls['oldPassword'].value == '' && this.valForm.controls['password'].value != '') {\r\n this.enterPw = true;\r\n }\r\n if (this.valForm.controls['oldPassword'].value == '' && this.valForm.controls['password'].value == '') {\r\n this.enterPw = false;\r\n this.oldPassword = false;\r\n }\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n\r\n if (this.registerResponseModel.mediaUserModel.mediaUserTypes.length === 0) {\r\n this.userFilled = false;\r\n } else{\r\n this.userFilled = true;\r\n }\r\n\r\n if (this.valForm.valid && !this.oldPassword && !this.enterPw && this.userFilled) {\r\n this.update();\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
User profile
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.firstNameRequired }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.lastNameRequired }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.emailNameRequired }}\r\n {{ language.invalidEmail }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.max50Characters }}\r\n \r\n {{ language.min4Characters }}\r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n {{ language.passwordsNoMatch }}\r\n
\r\n
\r\n \r\n \r\n {{ language.mustEnterFirstPassword }}\r\n {{ language.mustEnterOldPassword }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n {{ language.languages }}\r\n
\r\n \r\n
{{ lan }}{{ isLast ? \"\" : \", \" }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{ lang.label }}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n Users\r\n
\r\n \r\n
{{ user }}{{ isLast ? \"\" : \", \" }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{ user.name }}
\r\n
\r\n
\r\n
\r\n
\r\n {{ language.mediaUserTypeRequired }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ language.add }}
\r\n
\r\n
\r\n
\r\n \r\n
Facebook
\r\n
\r\n
\r\n \r\n
Twitter
\r\n
\r\n
\r\n \r\n
Linkedin
\r\n
\r\n
\r\n \r\n
Instagram
\r\n
\r\n
\r\n \r\n
Youtube
\r\n
\r\n
\r\n \r\n
WordPress
\r\n
\r\n
\r\n {{ language.done }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{ language.iWantNewsletter }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnInit,\r\n HostListener,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../../shared/services/mc-service\";\r\nimport { WebNewsDetailsMediaModel, WebNewsDetailsModel } from \"../news-model\";\r\nimport { Router, ActivatedRoute, Params } from \"@angular/router\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { saveAs } from \"file-saver\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { StorageService } from \"../../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../../shared/helpers/url-helper\";\r\nimport {\r\n SearchModel,\r\n SearchResultModel,\r\n WebSearchModel,\r\n} from \"../../../header/search/search-model\";\r\nimport { TokenManagerService } from \"../../../shared/services/token-manager.service\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../../shared/services/fonts-and-colors.service\";\r\nimport { DownloadAddToModel } from \"../../media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport {\r\n DomSanitizer,\r\n Meta,\r\n MetaDefinition,\r\n Title,\r\n} from \"@angular/platform-browser\";\r\nimport { MyFilesService } from \"../../../shared/services/my-files.service\";\r\nimport { ButtonsHelper } from \"../../../shared/helpers/buttons-helper\";\r\nimport { SavedStoryService } from \"../../../shared/services/saved-story.service\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { WebpHelperService } from \"../../../shared/services/webp-helper.service\";\r\n\r\ndeclare var require: any;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-news-detail-4\",\r\n templateUrl: \"./news-detail-4.component.html\",\r\n styleUrls: [\"./news-detail-4.component.less\"],\r\n})\r\nexport class NewsDetailComponent4 implements OnInit {\r\n urlSubscription: Subscription;\r\n\r\n popup: boolean;\r\n loginPopup: boolean;\r\n media: any[];\r\n\r\n filtered: WebNewsDetailsMediaModel[] = [];\r\n imageMedia: WebNewsDetailsMediaModel[] = [];\r\n audioMedia: WebNewsDetailsMediaModel[] = [];\r\n videoMedia: WebNewsDetailsMediaModel[] = [];\r\n documentMedia: WebNewsDetailsMediaModel[] = [];\r\n cartItems: any[] = [];\r\n image: number[] = [];\r\n video: number[] = [];\r\n audio: number[] = [];\r\n activeSubTab: number;\r\n storyId: number;\r\n url: string;\r\n forDownload: any[] = [];\r\n downloadIds: any[] = [];\r\n blob: any;\r\n loader: boolean;\r\n disabledButton: boolean;\r\n mediaId: number;\r\n autoplay: boolean;\r\n allFiles: number;\r\n share: boolean;\r\n all: boolean;\r\n imageTab: boolean;\r\n videoTab: boolean;\r\n documentTab: boolean;\r\n audioTab: boolean;\r\n user: any;\r\n styles = new PageStyle();\r\n activeAllTab = false;\r\n activeTab = \"all\";\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n activeFb = false;\r\n activeMail = false;\r\n activeTw = false;\r\n activeIn = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n sLng: number;\r\n token: string;\r\n relatedStoriesTabOpened = true;\r\n mediaTabOpened = true;\r\n isMediaUser: boolean;\r\n buttonsHelper = ButtonsHelper;\r\n publisher: string;\r\n\r\n private scrolled25: boolean = false;\r\n private scrolled50: boolean = false;\r\n private scrolled75: boolean = false;\r\n private scrolled90: boolean = false;\r\n private scrolled100: boolean = false;\r\n\r\n webNewsDetailsResponse: WebNewsDetailsModel;\r\n filters: any;\r\n\r\n constructor(\r\n private myFilesService: MyFilesService,\r\n private languageService: LanguageService,\r\n private mcService: McService,\r\n private meta: Meta,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private http: HttpClient,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private sanitizer: DomSanitizer,\r\n private titleService: Title,\r\n private savedStoryService: SavedStoryService,\r\n private storageService: StorageService,\r\n public webPHelperService: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n this.token = localStorage.getItem(\"Token\");\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n onLogin(state) {\r\n if (state) {\r\n this.download({}, \"text\");\r\n }\r\n }\r\n\r\n activeallC(name) {\r\n if (name == \"all\") {\r\n if (this.activeAllTab) {\r\n this.allActive = true;\r\n } else {\r\n this.activeAllTab = true;\r\n }\r\n } else if (name == \"image\") {\r\n if (this.activeImageTab) {\r\n this.imageActive = true;\r\n } else {\r\n this.activeImageTab = true;\r\n }\r\n } else if (name == \"video\") {\r\n if (this.activeVideoTab) {\r\n this.videoActive = true;\r\n } else {\r\n this.activeVideoTab = true;\r\n }\r\n } else if (name == \"document\") {\r\n if (this.activeDocumentsTab) {\r\n this.docActive = true;\r\n } else {\r\n this.activeDocumentsTab = true;\r\n }\r\n } else if (name == \"audio\") {\r\n if (this.activeAudioTab) {\r\n this.audioActive = true;\r\n } else {\r\n this.activeAudioTab = true;\r\n }\r\n }\r\n }\r\n\r\n activeallCOut(name) {\r\n if (name == \"all\") {\r\n if (!this.allActive) {\r\n this.activeAllTab = false;\r\n }\r\n } else if (name == \"image\") {\r\n if (!this.imageActive) {\r\n this.activeImageTab = false;\r\n }\r\n } else if (name == \"video\") {\r\n if (!this.videoActive) {\r\n this.activeVideoTab = false;\r\n }\r\n } else if (name == \"document\") {\r\n if (!this.docActive) {\r\n this.activeDocumentsTab = false;\r\n }\r\n } else if (name == \"audio\") {\r\n if (!this.audioActive) {\r\n this.activeAudioTab = false;\r\n }\r\n }\r\n }\r\n\r\n showCart() {\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToDownload &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n if (this.cartItems.length > 0) {\r\n this.router.navigateByUrl(\"/download\");\r\n } else {\r\n return;\r\n }\r\n }\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n let niz = new DownloadAddToModel();\r\n niz.storyMediaIds = this.downloadIds;\r\n niz.publishedMediaIds = [];\r\n niz.userId = this.user.id;\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.urlSubscription = this.route.params.subscribe((params: Params) => {\r\n this.getData();\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.urlSubscription.unsubscribe();\r\n }\r\n\r\n getData() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.user = TokenManagerService.getUser();\r\n\r\n if (this.user.role === \"MediaUser\") {\r\n this.isMediaUser = false;\r\n } else if (this.user.role && this.user.role !== \"MediaUser\") {\r\n this.isMediaUser = true;\r\n } else {\r\n this.isMediaUser = false;\r\n }\r\n\r\n this.storyId = +this.router.routerState.snapshot.url.split(\"/\")[2];\r\n this.getNewsDetails();\r\n window.scrollTo(0, 0);\r\n this.popup = false;\r\n this.filtered = this.media;\r\n this.share = false;\r\n this.currentUrl = window.location.href;\r\n\r\n let mediaFromRoute = this.route.snapshot.paramMap.get(\"media\");\r\n if (mediaFromRoute != undefined) {\r\n let tempMedia = { id: mediaFromRoute };\r\n this.openMediaPopup(tempMedia);\r\n }\r\n }\r\n\r\n showSubCategory(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n showSubCategoryRandom(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n getNewsDetails() {\r\n this.loader = true;\r\n if (this.sLng == 0) {\r\n this.sLng = 1;\r\n }\r\n this.mcService\r\n .getNewsDetail(this.storyId, this.sLng, this.isMediaUser)\r\n .subscribe(\r\n (response: any) => {\r\n this.webNewsDetailsResponse = response;\r\n console.log(\"story\", this.webNewsDetailsResponse);\r\n this.titleService.setTitle(response?.storyTitle.substring(0, 65));\r\n this.meta.updateTag({\r\n name: \"keywords\",\r\n content: response?.storyTitle.substring(0, 65),\r\n });\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: response?.shortDescription.substring(0, 100),\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: response?.storyTitle.substring(0, 65),\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: response?.shortDescription.substring(0, 100),\r\n });\r\n\r\n this.webNewsDetailsResponse.alsoMayLike =\r\n this.webNewsDetailsResponse.alsoMayLike.slice(0, 4);\r\n for (const media of this.webNewsDetailsResponse.media) {\r\n media.shareUrl =\r\n UrlHelper.getCurrentUrlHostOnly() +\r\n \"/content-files/\" +\r\n this.webNewsDetailsResponse.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(this.webNewsDetailsResponse.storyTitle) +\r\n \"/\" +\r\n media.id;\r\n //\r\n }\r\n\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToAccess &&\r\n !this.webNewsDetailsResponse.anonymousShare &&\r\n !this.token\r\n ) {\r\n sessionStorage.setItem(\r\n \"redirectUrl\",\r\n \"/\" + window.location.pathname\r\n );\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n\r\n if (this.webNewsDetailsResponse.featuredEmbeddedCode) {\r\n this.webNewsDetailsResponse.embeddedCode =\r\n this.sanitizer.bypassSecurityTrustHtml(\r\n this.webNewsDetailsResponse.featuredEmbeddedCode\r\n );\r\n }\r\n\r\n for (const story of this.webNewsDetailsResponse.alsoMayLike) {\r\n if (story.featuredEmbeddedCode) {\r\n story.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n\r\n if (this.webNewsDetailsResponse.socialSharing != null) {\r\n this.socials = this.webNewsDetailsResponse.socialSharing;\r\n }\r\n\r\n this.allFiles =\r\n this.webNewsDetailsResponse.images +\r\n this.webNewsDetailsResponse.video +\r\n this.webNewsDetailsResponse.document +\r\n this.webNewsDetailsResponse.audio;\r\n this.filtered = response.media;\r\n this.loader = false;\r\n\r\n for (const f of this.filtered) {\r\n if (f.mediaType === \"Audio\" || f.mediaType === \"Video\") {\r\n f.mediaLengthMin = Math.floor(f.mediaLenght / 60);\r\n f.mediaLengthSec = f.mediaLenght - f.mediaLengthMin * 60;\r\n }\r\n }\r\n\r\n this.groupMedia();\r\n\r\n if (localStorage.getItem(\"cart\") != null) {\r\n this.cartItems = JSON.parse(localStorage.getItem(\"cart\"));\r\n }\r\n // this.meta.updateTag({name: 'keywords', content: response.thumbUrl});\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: response.storyTitle,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:text:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:image\",\r\n content: response.thumbUrl,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:card\",\r\n content: \"summary_large_image\",\r\n });\r\n this.meta.updateTag({\r\n property: \"og:image\",\r\n content: response.thumbUrl,\r\n });\r\n this.meta.updateTag({\r\n property: \"og:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n property: \"og:title\",\r\n content: response.storyTitle,\r\n });\r\n setTimeout(() => {\r\n $(\"#bodytext a\").attr(\"target\", \"_blank\");\r\n }, 1000);\r\n\r\n this.filters = [\r\n {\r\n key: \"all\",\r\n text: this.language.allFiles,\r\n faClass: \"fal fa-archive\",\r\n amount: this.allFiles,\r\n },\r\n {\r\n key: \"image\",\r\n text: this.language.imageFiles,\r\n faClass: \"fal fa-camera-retro\",\r\n amount: this.webNewsDetailsResponse.images,\r\n },\r\n {\r\n key: \"video\",\r\n text: this.language.videoFiles,\r\n faClass: \"fal fa-video\",\r\n amount: this.webNewsDetailsResponse.video,\r\n },\r\n {\r\n key: \"document\",\r\n text: this.language.documents,\r\n faClass: \"fal fa-file\",\r\n amount: this.webNewsDetailsResponse.document,\r\n },\r\n {\r\n key: \"audio\",\r\n text: this.language.audioFiles,\r\n faClass: \"fal fa-volume-up\",\r\n amount: this.webNewsDetailsResponse.audio,\r\n },\r\n ];\r\n },\r\n (error2) => {\r\n this.router.navigateByUrl(\"/home\");\r\n //\r\n }\r\n );\r\n }\r\n\r\n groupMedia() {\r\n this.imageMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"image\"\r\n );\r\n this.audioMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"audio\"\r\n );\r\n this.videoMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"video\"\r\n );\r\n this.documentMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"document\"\r\n );\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.autoplay = false;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openMediaPopupAutplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openShare() {\r\n this.share = !this.share;\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.webNewsDetailsResponse.alsoMayLike) {\r\n if (x.storyId === id) {\r\n x.shareDropdown = !x.shareDropdown;\r\n }\r\n }\r\n }\r\n openMediaDropdown(media) {\r\n media.mediaDropdown = !media.mediaDropdown;\r\n event.stopPropagation();\r\n }\r\n\r\n onClickOutside(event: Object, media) {\r\n if (event && event[\"value\"] === true) {\r\n media.mediaDropdown = false;\r\n }\r\n }\r\n\r\n readMore(id) {\r\n window.scrollTo(0, 0);\r\n this.user = TokenManagerService.getUser();\r\n this.storyId = id.staggingStoryId;\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(id.storyTitle),\r\n ]);\r\n this.loader = true;\r\n\r\n this.getNewsDetails();\r\n }\r\n\r\n mediaChecked(media, e) {\r\n e.stopPropagation();\r\n let component = this;\r\n const index = this.forDownload.indexOf(media);\r\n media.checked = !media.checked;\r\n if (component.forDownload.indexOf(media) == -1 && media.checked) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n } else if (!media.checked) {\r\n component.forDownload.splice(index, 1);\r\n component.downloadIds.splice(index, 1);\r\n }\r\n }\r\n\r\n downloadingAll = false;\r\n downloadingImage = false;\r\n downloadingVideo = false;\r\n downloadingDocument = false;\r\n downloadingAudio = false;\r\n\r\n downloadAll(list = null, mediaType) {\r\n if (mediaType == \"all\") this.downloadingAll = true;\r\n else if (mediaType == \"image\") this.downloadingImage = true;\r\n else if (mediaType == \"video\") this.downloadingVideo = true;\r\n else if (mediaType == \"document\") this.downloadingDocument = true;\r\n else if (mediaType == \"audio\") this.downloadingAudio = true;\r\n let component = this;\r\n if (list === null) list = this.filtered;\r\n list.forEach(function (media) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n });\r\n this.download({}, \"text\", mediaType);\r\n }\r\n\r\n sendToCart() {\r\n let component = this;\r\n this.filtered.forEach(function (value) {\r\n if (component.cartItems.indexOf(value.id) == -1 && value.checked) {\r\n component.cartItems.push(value.id);\r\n value.addedToCart = true;\r\n value.checked = false;\r\n component.myFilesService.pushMyFiles(value.id);\r\n }\r\n });\r\n }\r\n\r\n sendAllToCart(list = null) {\r\n let component = this;\r\n if (list === null) list = this.filtered;\r\n list.forEach(function (value) {\r\n if (component.cartItems.indexOf(value.id) == -1) {\r\n component.cartItems.push(value.id);\r\n value.addedToCart = true;\r\n value.checked = false;\r\n component.myFilesService.pushMyFiles(value.id);\r\n }\r\n });\r\n }\r\n\r\n addDownloadClientSide() {\r\n for (const x of this.webNewsDetailsResponse.media) {\r\n for (const y of this.forDownload) {\r\n if (x.downloadLink == y) {\r\n x.downloads++;\r\n }\r\n }\r\n }\r\n }\r\n\r\n download(element, text, mediaType = null) {\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToDownload &&\r\n !this.webNewsDetailsResponse.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n var urls = this.forDownload;\r\n let component = this;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = \"download.zip\";\r\n\r\n if (this.forDownload.length > 1) {\r\n element.textContent = text;\r\n component.disabledButton = true;\r\n urls.forEach(function (url) {\r\n var filename = url.split(\"/\")[8];\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err;\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n\r\n component.disabledButton = false;\r\n element.textContent = \"Download\";\r\n\r\n if (mediaType == \"all\") component.downloadingAll = false;\r\n else if (mediaType == \"image\") component.downloadingImage = false;\r\n else if (mediaType == \"video\") component.downloadingVideo = false;\r\n else if (mediaType == \"document\") component.downloadingDocument = false;\r\n else if (mediaType == \"audio\") component.downloadingAudio = false;\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n });\r\n }\r\n });\r\n });\r\n this.addDownloadClientSide();\r\n } else {\r\n for (const x of this.forDownload) {\r\n component.disabledButton = true;\r\n element.textContent = text;\r\n this.http\r\n .get(x, { responseType: \"blob\" })\r\n .toPromise()\r\n .then(\r\n (blob: Blob) => {\r\n let filename = x.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n component.disabledButton = false;\r\n element.textContent = \"Download\";\r\n\r\n if (mediaType == \"all\") component.downloadingAll = false;\r\n else if (mediaType == \"image\") component.downloadingImage = false;\r\n else if (mediaType == \"video\") component.downloadingVideo = false;\r\n else if (mediaType == \"document\") component.downloadingDocument = false;\r\n else if (mediaType == \"audio\") component.downloadingAudio = false;\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n },\r\n (error) => { }\r\n );\r\n this.addDownloadClientSide();\r\n }\r\n }\r\n this.forDownload = [];\r\n }\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.slice(0, this.currentUrl.lastIndexOf(\"story/\")) +\r\n \"story/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webNewsDetailsResponse.alsoMayLike.find(\r\n (x) => x.staggingStoryId == storyId\r\n ).storyTitle\r\n )\r\n );\r\n }\r\n\r\n getMediaUrl(mediaId: number) {\r\n const currentUrlArray = this.currentUrl.split(\"/\");\r\n if (currentUrlArray.length > 6) {\r\n return window.location.href;\r\n } else {\r\n return window.location.href + \"/\" + mediaId;\r\n }\r\n }\r\n\r\n changeTab(tab: string) {\r\n this.activeTab = tab;\r\n if (tab == \"all\") this.filtered = this.webNewsDetailsResponse.media;\r\n else {\r\n tab = tab.replace(/\\b\\w/g, (l) => l.toUpperCase());\r\n this.filtered = this.webNewsDetailsResponse.media.filter(\r\n (x) => x.mediaType === tab\r\n );\r\n }\r\n }\r\n\r\n scrollToMedias() {\r\n document.getElementById(\"medias\").scrollIntoView();\r\n }\r\n\r\n toggleSavedStory(storyId) {\r\n if (this.inSavedStories(storyId))\r\n this.savedStoryService\r\n .remove(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n else\r\n this.savedStoryService\r\n .add(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n inSavedStories(storyId) {\r\n return this.savedStoryService.inSavedStories(storyId);\r\n }\r\n\r\n @HostListener(\"window:scroll\", [\"$event\"])\r\n onWindowScroll($event) {\r\n var percentage: number = Math.round(this.getScrollPercentage());\r\n if (percentage == 25 && !this.scrolled25) {\r\n this.scrolled25 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 50 && !this.scrolled50) {\r\n this.scrolled50 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 75 && !this.scrolled75) {\r\n this.scrolled75 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 90 && !this.scrolled90) {\r\n this.scrolled90 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 100 && !this.scrolled100) {\r\n this.scrolled100 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n }\r\n\r\n getWindowHeight() {\r\n return (\r\n window.innerHeight ||\r\n document.documentElement.clientHeight ||\r\n document.body.clientHeight ||\r\n 0\r\n );\r\n }\r\n getWindowYscroll() {\r\n return (\r\n window.pageYOffset ||\r\n document.body.scrollTop ||\r\n document.documentElement.scrollTop ||\r\n 0\r\n );\r\n }\r\n getDocHeight() {\r\n return Math.max(\r\n document.body.scrollHeight || 0,\r\n document.documentElement.scrollHeight || 0,\r\n document.body.offsetHeight || 0,\r\n document.documentElement.offsetHeight || 0,\r\n document.body.clientHeight || 0,\r\n document.documentElement.clientHeight || 0\r\n );\r\n }\r\n getScrollPercentage() {\r\n return (\r\n ((this.getWindowYscroll() + this.getWindowHeight()) /\r\n this.getDocHeight()) *\r\n 100\r\n );\r\n }\r\n\r\n searchByCategory(category) {\r\n console.log(category);\r\n this.loader = true;\r\n let searchResultResponse = new SearchResultModel();\r\n const searchModel = new WebSearchModel();\r\n searchModel.languageId = Number(localStorage.getItem(\"lng\"));\r\n searchModel.stories = true;\r\n searchModel.media = false;\r\n searchModel.images = false;\r\n searchModel.video = false;\r\n searchModel.document = false;\r\n searchModel.audio = false;\r\n searchModel.page = 1;\r\n searchModel.pageSize = 12;\r\n if (category.isCustom) {\r\n searchModel.customCategoryIds = [category.id];\r\n } else {\r\n searchModel.mainCategoryIds = [category.id];\r\n }\r\n\r\n this.mcService.searchMcStories(searchModel).subscribe(\r\n (response: any) => {\r\n searchResultResponse = response;\r\n for (const result of searchResultResponse.stories) {\r\n if (result.featuredEmbeddedCode) {\r\n result.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n result.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (\r\n searchResultResponse.mustRegisterToAccess &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.loader = false;\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.storageService.setSearchItemStories(searchResultResponse);\r\n this.storageService.setSearchModel(searchModel);\r\n this.loader = false;\r\n this.router.navigateByUrl(\"/results\");\r\n }\r\n },\r\n (error) => {\r\n searchModel.stories = false;\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
{{ language.storyPublisher }}
\r\n
\r\n {{ webNewsDetailsResponse?.publishedDate | date : \" dd MMMM yyyy\" }}\r\n
\r\n
\r\n
\r\n
{{ language.storyDate }}
\r\n
\r\n {{ webNewsDetailsResponse?.publishedDate | date : \" dd MMMM yyyy\" }}\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
1 ? 'has-child' : ''\">\r\n
\r\n {{category?.name}}\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ webNewsDetailsResponse?.storyTitle }}\r\n

\r\n

\r\n {{ webNewsDetailsResponse?.shortDescription }}\r\n

\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
0\">\r\n
\r\n

\r\n {{ language.media }}\r\n
\r\n \r\n \r\n
\r\n

\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.images }} ({{ imageMedia.length }})
\r\n
\r\n {{ downloadingImage ? language.downloading : language.downloadAllImages }}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.videos }} ({{ videoMedia.length }})
\r\n
\r\n {{ language.downloadAllVideos }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
\r\n {{ language.documents }} ({{ documentMedia.length }})\r\n
\r\n
\r\n {{ language.downloadAllDocuments }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.audios }} ({{ audioMedia.length }})
\r\n
\r\n {{ language.downloadAllAudios }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

\r\n {{ language.youMayAlsoLike }}\r\n

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostListener,\r\n NgZone,\r\n OnInit,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { NewsModel } from \"../../models/news/news.model\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport {\r\n FeaturedStoriesModel,\r\n HomeModel,\r\n LatestMediaModel,\r\n LatestStoriesModel,\r\n} from \"./home-model\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Meta } from \"@angular/platform-browser\";\r\nimport { Title } from \"@angular/platform-browser\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Location } from \"@angular/common\";\r\n\r\ndeclare var $: any;\r\n\r\nimport { MetaModel } from \"../../models/meta/meta\";\r\nimport { FacebookService } from \"ngx-facebook\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { CommunicationService } from \"../../shared/services/communication.service\";\r\nimport { MCLanguageService } from \"../../shared/services/mc-language.service\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { WebpHelperService } from \"../../shared/services/webp-helper.service\";\r\nimport { BrandsManageModel } from \"../brands/brands-model\";\r\n\r\n@Component({\r\n selector: \"app-homepage-3\",\r\n templateUrl: \"./homepage-3.component.html\",\r\n styleUrls: [\"./homepage-3.component.less\"],\r\n})\r\nexport class HomepageComponent3 implements OnInit {\r\n news: NewsModel[];\r\n picture: SafeHtml;\r\n visibleNews: NewsModel[];\r\n searchText = \"\";\r\n dropdown = false;\r\n grid: string;\r\n latestCategoryGrid: string;\r\n activeSubTab: number;\r\n filtered: LatestMediaModel[] = [];\r\n category: string;\r\n mediaId: number;\r\n popup = false;\r\n p = 1;\r\n subcategory = false;\r\n twitterActive: boolean;\r\n facebookActive: boolean;\r\n instagramActive: boolean;\r\n linkedinActive: boolean;\r\n loader: boolean;\r\n image: string;\r\n audio: number;\r\n video: number;\r\n document: number;\r\n images: number;\r\n twitter: any[];\r\n facebook: any[];\r\n linkedin: any;\r\n homeModelResponse = new HomeModel();\r\n storyGroupings: LatestStoriesModel[][] = [[]];\r\n items: Array = [];\r\n backgroundUrl = \"\";\r\n videoUrl = \"\";\r\n thumbUrl = \"\";\r\n autoplay: boolean;\r\n selectedFs: any = {};\r\n activeSlide: number = 0;\r\n all = true;\r\n imageTab = false;\r\n videoTab = false;\r\n documentTab = false;\r\n audioTab = false;\r\n styles = new PageStyle();\r\n showVideos = false;\r\n showImages = false;\r\n showAudios = false;\r\n showDocuments = false;\r\n countAll = 0;\r\n countVideos = 0;\r\n countImages = 0;\r\n countAudios = 0;\r\n countDocuments = 0;\r\n user: any;\r\n activeAllTab = false;\r\n activeTab = false;\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n activeAll: boolean = true;\r\n activeImage: boolean = false;\r\n activeVideo: boolean = false;\r\n activeDoc: boolean = false;\r\n activeAudio: boolean = false;\r\n fStories: FeaturedStoriesModel[];\r\n nextFStories: FeaturedStoriesModel[] = [];\r\n filterDropdown: boolean;\r\n metadatas: MetaModel;\r\n newsHeadlineLength: number;\r\n newsGridResponse: HomeModel;\r\n shortDescriptionLength: number;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n mcLanguage = [];\r\n sLng: number;\r\n loading = false;\r\n xDown = null;\r\n yDown = null;\r\n featuredEmbeddedCode: SafeHtml;\r\n buttonsHelper = ButtonsHelper;\r\n mediaLoaded = false;\r\n initialLoaded = false;\r\n latestStoriesLoaded = false;\r\n storiesCategoryLoaded = false;\r\n showCategory = true;\r\n brands: BrandsManageModel[] = [];\r\n brandsCurrentScroll: number = 0;\r\n brandsMaxScroll: number = 0;\r\n innerWidth: number = 0;\r\n @ViewChild(\"brandsContainer\")\r\n brandsContainer: ElementRef;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private ngZone: NgZone,\r\n private sService: StorageService,\r\n private meta: Meta,\r\n private titleService: Title,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private languageService: LanguageService,\r\n private mcLanguageService: MCLanguageService,\r\n private fbo: FacebookService,\r\n private route: ActivatedRoute,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private location: Location,\r\n private communicationService: CommunicationService,\r\n private sanitizer: DomSanitizer,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n this.mcLanguageService.language.subscribe((language) => {\r\n this.getHomeTexts(language);\r\n });\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n if (media) {\r\n this.openPopup(+media);\r\n }\r\n });\r\n this.route.queryParams.subscribe((params) => {\r\n if (params[\"parentBrandUrl\"]) {\r\n this.communicationService.setFromBrands(decodeURI(params[\"parentBrandUrl\"]));\r\n }\r\n });\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.resize();\r\n }\r\n\r\n getHomeTexts(mcLanguage) {\r\n if (mcLanguage) {\r\n let homeKeywords = [\r\n \"SearchBoxTitle\",\r\n \"SearchBoxText\",\r\n \"SearchBoxSubtitle\",\r\n ];\r\n let homeKeywordIds = [];\r\n let homeIdToKeyword = [];\r\n for (const keyword of mcLanguage.keywords) {\r\n if (homeKeywords.includes(keyword.label)) {\r\n homeKeywordIds.push(keyword.id);\r\n homeIdToKeyword[keyword.id] = keyword.label;\r\n }\r\n }\r\n let lngId = localStorage.getItem(\"lng\");\r\n for (const mccl of mcLanguage.mediaCenterChosenLanguages) {\r\n if (\r\n homeKeywordIds.includes(mccl.keywordId) &&\r\n mccl.languageId == lngId\r\n ) {\r\n this.mcLanguage[homeIdToKeyword[mccl.keywordId]] = mccl.translation;\r\n }\r\n }\r\n }\r\n }\r\n\r\n openPopup(id) {\r\n this.mediaId = id;\r\n this.popup = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.showCategory = localStorage.getItem(\"hideCategories\") != \"1\";\r\n this.language = this.languageService.getLanguage();\r\n this.getHomeTexts(this.mcLanguageService.getMCLanguage());\r\n document.addEventListener(\r\n \"touchstart\",\r\n (evt) => {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n },\r\n false\r\n );\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n window.scrollTo(0, 0);\r\n\r\n this.getHomepage();\r\n this.user = TokenManagerService.getUser();\r\n this.currentUrl = window.location.href;\r\n\r\n this.facebook = [];\r\n this.getBrands();\r\n }\r\n\r\n getBrands() {\r\n this.mcService.getBrands().subscribe(\r\n (response: any) => {\r\n this.brands = response.clients;\r\n setTimeout(() => {\r\n this.brandsMaxScroll = this.brandsContainer?.nativeElement?.offsetWidth;\r\n }, 1000);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n handleTouchStart(evt) {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n }\r\n\r\n resize() {\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns2\") {\r\n this.newsHeadlineLength = 155;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 120;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns3\") {\r\n this.newsHeadlineLength = 90;\r\n this.shortDescriptionLength = 140;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 120;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 75;\r\n this.shortDescriptionLength = 75;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns4\") {\r\n this.newsHeadlineLength = 60;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 15;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 100;\r\n }\r\n }\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n getStoryUrl(storyId, stories) {\r\n return (\r\n this.currentUrl.replace(\"home\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n stories.find((x) => x.staggingStoryId == storyId).storyTitle\r\n )\r\n );\r\n }\r\n\r\n homepageLoaded() {\r\n if (this.latestStoriesLoaded && this.initialLoaded) {\r\n this.resize();\r\n this.loader = false;\r\n }\r\n }\r\n\r\n getHomepage() {\r\n this.loader = true;\r\n this.mcService.getHomepageInitial(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Initial Load\");\r\n this.initialLoaded = true;\r\n this.homeModelResponse.featuredStories = response.featuredStories;\r\n this.homeModelResponse.mustRegisterToAccess =\r\n response.mustRegisterToAccess;\r\n this.homeModelResponse.mustRegisterToDownload =\r\n response.mustRegisterToDownload;\r\n this.homeModelResponse.hideCounters = response.hideCounters;\r\n this.homeModelResponse.latesStoryGridType = response.latesStoryGridType;\r\n this.grid = this.homeModelResponse.latesStoryGridType;\r\n this.homeModelResponse.title = response.title;\r\n this.homeModelResponse.bodyText = response.bodyText;\r\n this.homeModelResponse.additionalBodyText = response.additionalBodyText;\r\n this.homeModelResponse.socialSharing = response.socialSharing;\r\n\r\n this.fStories = response.featuredStories;\r\n this.selectedFs = this.homeModelResponse.featuredStories[0];\r\n for (let i = 1; i < this.fStories.length && i <= 3; i++) {\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n if (this.nextFStories.length < 3) {\r\n this.nextFStories.push(this.fStories[0]);\r\n }\r\n for (const x of this.homeModelResponse.featuredStories) {\r\n this.images = x.images;\r\n this.video = x.video;\r\n this.audio = x.audio;\r\n this.document = x.document;\r\n }\r\n this.backgroundUrl =\r\n this.homeModelResponse?.featuredStories[0]?.fullHDUrl || \"\";\r\n\r\n for (const x of this.fStories) {\r\n if (x.fullHDUrl === \"\") {\r\n this.thumbUrl = x.thumbUrl;\r\n }\r\n }\r\n\r\n for (const featuredStory of this.homeModelResponse.featuredStories) {\r\n if (featuredStory.featuredEmbeddedCode) {\r\n featuredStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n featuredStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (this.homeModelResponse.socialSharing != null) {\r\n this.socials = this.homeModelResponse.socialSharing;\r\n }\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n this.mcService.getHomepageLatestStories(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Latest Stories\");\r\n this.latestStoriesLoaded = true;\r\n this.homeModelResponse.latestStories = response.latestStories;\r\n for (const latestStory of this.homeModelResponse.latestStories) {\r\n if (latestStory.featuredEmbeddedCode) {\r\n latestStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n latestStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.loadStoryGroupings();\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n loadStoryGroupings() {\r\n let count = 0;\r\n for (const story of this.homeModelResponse.latestStories) {\r\n if (this.storyGroupings[count].length >= 4) count++;\r\n if (!this.storyGroupings[count]) this.storyGroupings[count] = [];\r\n this.storyGroupings[count].push(story);\r\n }\r\n }\r\n\r\n changeStory(story: FeaturedStoriesModel, i) {\r\n this.videoUrl = \"\";\r\n this.images = story.images;\r\n this.video = story.video;\r\n this.audio = story.audio;\r\n this.document = story.document;\r\n this.selectedFs = story;\r\n if (story.mediaType == \"Image\") {\r\n this.backgroundUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.mediaType == \"Video\") {\r\n this.videoUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.featuredEmbeddedCode) {\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n this.activeSlide = i;\r\n }\r\n\r\n moveLeftBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll - moveAmount;\r\n if (this.brandsCurrentScroll < 0) this.brandsCurrentScroll = 0;\r\n }\r\n\r\n moveRightBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll + moveAmount;\r\n if (this.brandsCurrentScroll > this.brandsMaxScroll - this.innerWidth)\r\n this.brandsCurrentScroll = this.brandsMaxScroll - this.innerWidth;\r\n }\r\n\r\n prevSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != 0) {\r\n this.activeSlide = this.activeSlide - 1;\r\n } else {\r\n this.activeSlide = this.fStories.length - 1;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n nextSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != this.fStories.length - 1) {\r\n this.activeSlide = this.activeSlide + 1;\r\n } else {\r\n this.activeSlide = 0;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n changeSlide() {\r\n this.selectedFs = this.fStories[this.activeSlide];\r\n this.backgroundUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n for (const x of this.fStories) {\r\n if (x.mediaType == \"Video\") {\r\n this.videoUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n }\r\n }\r\n\r\n if (this.selectedFs.featuredEmbeddedCode) {\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n this.selectedFs.featuredEmbeddedCode\r\n );\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n }\r\n this.nextFStories = [];\r\n for (let i = this.activeSlide + 1; this.nextFStories.length < 3; i++) {\r\n if (i >= this.fStories.length) i = 0;\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n }\r\n\r\n readMore(id, title) {\r\n localStorage.setItem(\"storyId\", JSON.stringify(id));\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.googleAnalytics.emitArticleEvent(\"homepage\", id.staggingStoryId);\r\n this.googleAnalytics.emitReadMoreEvent(\r\n \"slider\",\r\n title,\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title)\r\n );\r\n this.router.navigate([\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title),\r\n ]);\r\n }\r\n\r\n goToMc(url, clientId) {\r\n this.mcService.redirectToMc(clientId).subscribe(\r\n (response: any) => {\r\n const token = response.token;\r\n if (url)\r\n window.location.href = url + '&token=' + token;\r\n },\r\n (error) => {\r\n if (url)\r\n window.location.href = url;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ selectedFs?.images }}\r\n \r\n
\r\n
\r\n {{ selectedFs?.publishedDate | date : \" MMMM dd, yyyy\" }}\r\n
\r\n
\r\n
1 ? 'has-child' : ''\">\r\n
\r\n {{ selectedFs?.category[0] }}\r\n
\r\n
\r\n
1\">\r\n
\r\n {{ category }}\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ selectedFs?.storyTitle }}\r\n

\r\n \r\n
\r\n
\r\n {{ language.readMore }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{ language.latestStory }}\r\n

\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"brands\">\r\n
\r\n

\r\n {{ language.brands }}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n","import {Injectable} from '@angular/core';\r\nimport {TokenManagerService} from './token-manager.service';\r\nimport {ActivatedRouteSnapshot, Router, RouterStateSnapshot} from '@angular/router';\r\nimport {Observable} from 'rxjs';\r\nimport {McService} from './mc-service';\r\nimport {stat} from 'fs';\r\nimport {StorageService} from \"./storage.service\";\r\n\r\n@Injectable()\r\nexport class AuthGuardService {\r\n headerFooter: any;\r\n\r\n constructor(private tokenManagerService: TokenManagerService, private router: Router) {\r\n }\r\n\r\n\r\n canActivate(route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n const headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n return this.tokenManagerService.isAuthenticated()\r\n .then(\r\n (authenticated: boolean) => {\r\n if (authenticated) {\r\n return true;\r\n } else {\r\n this.router.navigate(['/sign-in'], {replaceUrl: true});\r\n }\r\n }\r\n );\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AuthGuard {\r\n headerFooter: any;\r\n\r\n constructor(private tokenManagerService: TokenManagerService, private router: Router, private mcService: McService) {\r\n }\r\n\r\n\r\n canActivate(route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n let headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n if (!headerFooter) {\r\n this.mcService.getHeaderFooter(1)\r\n .subscribe((response) => {\r\n localStorage.setItem('headerfooter', JSON.stringify(response));\r\n headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n this.checkRoute(state, headerFooter);\r\n },\r\n (error) => {\r\n //\r\n });\r\n } else {\r\n this.checkRoute(state, headerFooter);\r\n }\r\n return true;\r\n }\r\n\r\n checkRoute(state, headerFooter) {\r\n let url = false;\r\n for (const x of headerFooter.footerLinks) {\r\n if (x.url.toLowerCase() === state.url.split('/')[1]) {\r\n url = true;\r\n break;\r\n }\r\n }\r\n for (const y of headerFooter.headerLinks) {\r\n if (y.url.toLowerCase() === state.url.split('/')[1]) {\r\n url = true;\r\n break;\r\n }\r\n }\r\n\r\n if (url) {\r\n return true;\r\n } else {\r\n this.router.navigateByUrl('/');\r\n }\r\n }\r\n\r\n}\r\n\r\n@Injectable()\r\nexport class MustRegisterGuard {\r\n headerFooter: any;\r\n\r\n constructor(private tokenManagerService: TokenManagerService, private router: Router, private storageService: StorageService) {\r\n }\r\n\r\n\r\n canActivate(route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n\r\n if (TokenManagerService.getToken()) return true;\r\n\r\n sessionStorage.setItem('redirectUrl', '/' + state.url);\r\n\r\n if (sessionStorage.getItem('mustRegister')) {\r\n const mustRegister = JSON.parse(sessionStorage.getItem('mustRegister'));\r\n\r\n this.storageService.setMustRegister(mustRegister);\r\n\r\n if (!mustRegister) {\r\n return true;\r\n } else {\r\n this.router.navigate(['/sign-in']);\r\n }\r\n\r\n } else {\r\n this.tokenManagerService.mustRegister()\r\n .subscribe(\r\n (result) => {\r\n\r\n const model: any = result;\r\n\r\n sessionStorage.setItem('mustRegister', model.mustRegister);\r\n sessionStorage.setItem('anonymousShare', model.anonymousShare);\r\n\r\n this.storageService.setMustRegister(model.mustRegister);\r\n this.storageService.setAnonymousShare(model.anonymousShare);\r\n\r\n if (!model.mustRegister) {\r\n this.router.navigate([state.url]);\r\n return;\r\n } else {\r\n this.router.navigate(['/sign-in']);\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n }\r\n}\r\n\r\n@Injectable()\r\nexport class AnonymousShareGuard {\r\n headerFooter: any;\r\n\r\n constructor(private tokenManagerService: TokenManagerService, private router: Router, private storageService: StorageService) {\r\n }\r\n\r\n\r\n canActivate(route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n\r\n if (TokenManagerService.getToken()) return true;\r\n\r\n sessionStorage.setItem('redirectUrl', '/' + state.url);\r\n\r\n if (sessionStorage.getItem('mustRegister') && sessionStorage.getItem('anonymousShare')) {\r\n const mustRegister = JSON.parse(sessionStorage.getItem('mustRegister'));\r\n const anonymousShare = JSON.parse(sessionStorage.getItem('anonymousShare'));\r\n\r\n this.storageService.setMustRegister(mustRegister);\r\n this.storageService.setAnonymousShare(anonymousShare);\r\n\r\n if (anonymousShare) {\r\n return true;\r\n }\r\n\r\n if (!mustRegister) {\r\n return true;\r\n } else {\r\n this.router.navigate(['/sign-in']);\r\n }\r\n\r\n } else {\r\n this.tokenManagerService.mustRegister()\r\n .subscribe(\r\n (result) => {\r\n\r\n const model:any = result;\r\n\r\n sessionStorage.setItem('mustRegister', model.mustRegister);\r\n sessionStorage.setItem('anonymousShare', model.anonymousShare);\r\n\r\n this.storageService.setMustRegister(model.mustRegister);\r\n this.storageService.setAnonymousShare(model.anonymousShare);\r\n\r\n if (model.anonymousShare) {\r\n this.router.navigate([state.url]);\r\n return;\r\n }\r\n\r\n if (!model.mustRegister) {\r\n this.router.navigate([state.url]);\r\n return;\r\n } else {\r\n this.router.navigate(['/sign-in']);\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n }\r\n}\r\n","export const environment = {\r\n production: false,\r\n cmsUrl: 'https://devcms.moonideas.com/redirected?token=',\r\n apiUrlRoot: \"https://dna-api-development.azurewebsites.net\",\r\n apiUrl: \"https://dna-api-development.azurewebsites.net/api\",\r\n signalrUrl: \"https://signalr-develop.digitalnewsagency.com:5002\",\r\n mediaUrl: \"https://dnamediastorage.blob.core.windows.net/\",\r\n facebookAppId: \"137527330414505\",\r\n facebookAppSecret: \"9142cc75dfbbe38e5a8104c057fc7bea\",\r\n algoliaApplicationId: \"0KMDPEZ84J\",\r\n algoliaApiKey: \"e44d0540379aa8b931318b3275dc2b7e\",\r\n algoliaStoriesIndex: 'dev_stories',\r\n algoliaMediaIndex: 'dev_media',\r\n};\r\n","export class Language {\r\n public myFiles: string;\r\n public myFilesNoFiles: string;\r\n public logInMyFiles: string;\r\n public delete: string;\r\n public filterOrSearch: string;\r\n public loadMore: string;\r\n public deleteAll: string;\r\n public share: string;\r\n public itemsInBox: string;\r\n public cancel: string;\r\n public back: string;\r\n public next: string;\r\n public searchBoxTitle: string;\r\n public searchBoxText: string;\r\n public searchBoxSubtitle: string;\r\n public aboutUs: string;\r\n public brands: string;\r\n public contactUs: string;\r\n public media: string;\r\n public news: string;\r\n public testimonials: string;\r\n public search: string;\r\n public searchResults: string;\r\n public applyFilters: string;\r\n public clearFilters: string;\r\n public signIn: string;\r\n public register: string;\r\n public readMore: string;\r\n public whatStory: string;\r\n public featuredStories: string;\r\n public latestStory: string;\r\n public latestFrom: string;\r\n public latestFromMedia: string;\r\n public allFiles: string;\r\n public videoFiles: string;\r\n public imageFiles: string;\r\n public documents: string;\r\n public audioFiles: string;\r\n public sendToCart: string;\r\n public download: string;\r\n public youMayAlsoLike: string;\r\n public availableFormats: string;\r\n public alsoAvailableIn: string;\r\n public downloadBox: string;\r\n public downloadVideoInFormat: string;\r\n public shareCart: string;\r\n public firstName: string;\r\n public lastName: string;\r\n public email: string;\r\n public phone: string;\r\n public password: string;\r\n public confirmPassword: string;\r\n public companyName: string;\r\n public categoriesOfInterest: string;\r\n public languages: string;\r\n public socialHandles: string;\r\n public add: string;\r\n public iHaveRead: string;\r\n public iWantNewsletter: string;\r\n public submit: string;\r\n public signInFb: string;\r\n public signInTw: string;\r\n public forgotPassword: string;\r\n public searchFrom: string;\r\n public selectMedia: string;\r\n public selectDate: string;\r\n public from: string;\r\n public to: string;\r\n public searchHere: string;\r\n public categories: string;\r\n public send: string;\r\n public ourTeam: string;\r\n public home: string;\r\n public downloading: string;\r\n public addToMyFiles: string;\r\n public addedToMyFiles: string;\r\n public competition: string;\r\n public storyDate: string;\r\n public storyPublisher: string;\r\n public filterBy: string;\r\n public visit: string;\r\n public seeStories: string;\r\n public newsAlert: string;\r\n public signUpToday: string;\r\n public legal: string;\r\n public privacySettings: string;\r\n public addStoryToFav: string;\r\n public selectCategory: string;\r\n public addToFiles: string;\r\n public expand: string;\r\n public enterEmail: string;\r\n public enterPassword: string;\r\n public myAccount: string;\r\n public redirectToCms: string;\r\n public logOut: string;\r\n public noDownloadBoxes: string;\r\n public savedStories: string;\r\n public noStoriesSaved: string;\r\n public images: string;\r\n public downloadAllImages: string;\r\n public selectBrand: string;\r\n public downloadAllVideos: string;\r\n public videos: string;\r\n public downloadAllDocuments: string;\r\n public audios: string;\r\n public downloadAllAudios: string;\r\n public downloadAll: string;\r\n public items: string;\r\n public viewArticle: string;\r\n public searchForTerm: string;\r\n public searchNoResults: string;\r\n public termsAndConditions: string;\r\n public privacyPolicy: string;\r\n public newsletter: string;\r\n public suscribeConfirmation: string;\r\n public noBrandsInCustomCategory: string;\r\n public current: string;\r\n public files: string;\r\n public firstNameRequired: string;\r\n public lastNameRequired: string;\r\n public emailNameRequired: string;\r\n public invalidEmail: string;\r\n public telephone: string;\r\n public max50Characters: string;\r\n public min4Characters: string;\r\n public passwordNoSpaces: string;\r\n public confirmPasswordRequired: string;\r\n public passwordsNoMatch: string;\r\n public currentPassword: string;\r\n public mustEnterFirstPassword: string;\r\n public mustEnterOldPassword: string;\r\n public done: string;\r\n public userType: string;\r\n public mediaUserTypeRequired: string;\r\n public deleteAccount: string;\r\n public deleteAccountConfirmation: string;\r\n public incorrectPassword: string;\r\n public emailSentSuccess: string;\r\n public messageRequired: string;\r\n public maxLength50: string;\r\n public or: string;\r\n public downloadMediaLogIn: string;\r\n public latestDownloads: string;\r\n public noDownloads: string;\r\n public unsupportedVideoBrowser: string;\r\n public registrationSuccess: string;\r\n public activationEmailSent: string;\r\n public activationEmailInstructions: string;\r\n public lookForwardMessage: string;\r\n public thankYou: string;\r\n public disclaimer: string;\r\n public mediaCentreTitle: string;\r\n public mediaCentreSubtitle: string;\r\n\r\n\r\n constructor() {\r\n this.competition = \"Competition\";\r\n this.addToMyFiles = \"Add to my files\";\r\n this.addedToMyFiles = \"Added!\";\r\n this.filterOrSearch = \"Filter or Search\";\r\n this.loadMore = \"Load More\";\r\n this.delete = \"Delete\";\r\n this.myFilesNoFiles = \"You have no files selected\";\r\n this.logInMyFiles = \"You must log in to your account to see your files\";\r\n this.deleteAll = \"Delete All\";\r\n this.share = \"Share\";\r\n this.itemsInBox = \"Items in my box\";\r\n this.myFiles = \"My Files\";\r\n this.cancel = \"Cancel\";\r\n this.next = \"Next\";\r\n this.back = \"Back\";\r\n this.search = \"Search\";\r\n this.searchResults = \"Showing results for: \";\r\n this.applyFilters = \"Apply Filters\";\r\n this.clearFilters = \"Clear Filters\";\r\n this.signIn = \"Sign In\";\r\n this.register = \"Register\";\r\n this.readMore = \"Read More\";\r\n this.whatStory = \"What Story Are You Looking For?\";\r\n this.featuredStories = \"Featured Stories\";\r\n this.latestStory = \"Latest Stories\";\r\n this.latestFrom = \"Latest From\";\r\n this.latestFromMedia = \"Latest From Media\";\r\n this.allFiles = \"All Files\";\r\n this.sendToCart = \"Send To Cart\";\r\n this.download = \"Download\";\r\n this.downloading = \"Downloading\";\r\n this.availableFormats = \"Available formats\";\r\n this.alsoAvailableIn = \"Also available in\";\r\n this.downloadBox = \"Download Box\";\r\n this.downloadVideoInFormat = \"Download all Video files in format\";\r\n this.shareCart = \"Share Download Box\";\r\n this.firstName = \"First Name\";\r\n this.lastName = \"Last Name\";\r\n this.email = \"Email\";\r\n this.phone = \"Phone\";\r\n this.password = \"Password\";\r\n this.confirmPassword = \"Confirm Password\";\r\n this.companyName = \"Company Name\";\r\n this.categoriesOfInterest = \"Categories of interest\";\r\n this.languages = \"Languages\";\r\n this.socialHandles = \"Social handles\";\r\n this.add = \"Add\";\r\n this.iHaveRead = \"I have read and accept the T&C\";\r\n this.iWantNewsletter = \"I want to receive newsletter\";\r\n this.submit = \"Submit\";\r\n this.signInFb = \"Sign in with Facebook\";\r\n this.signInTw = \"Sign in with Twitter\";\r\n this.forgotPassword = \"Forgot password\";\r\n this.searchFrom = \"Search from\";\r\n this.selectMedia = \"Select media\";\r\n this.selectDate = \"Select date\";\r\n this.from = \"From\";\r\n this.to = \"To\";\r\n this.categories = \"Categories\";\r\n this.send = \"Send\";\r\n this.ourTeam = \"Our Team\";\r\n this.aboutUs = \"About Us\";\r\n this.brands = \"Brands\";\r\n this.contactUs = \"Contact Us\";\r\n this.media = \"Media\";\r\n this.news = \"News\";\r\n this.testimonials = \"Testimonials\";\r\n this.home = \"Home\";\r\n //TO DO: Pending translations\r\n this.searchHere = \"What are you looking for today?\";\r\n this.storyDate = \"Published On\";\r\n this.storyPublisher = \"Written By\";\r\n this.youMayAlsoLike = \"Latest Stories\";\r\n this.filterBy = \"Filter by:\";\r\n this.imageFiles = \"Images\";\r\n this.videoFiles = \"Videos\";\r\n this.documents = \"Documents\";\r\n this.audioFiles = \"Audios\";\r\n this.visit = \"Go to Brand Site\";\r\n this.seeStories = \"See Stories\";\r\n this.newsAlert = \"Get the news alerts you want, when you want them.\";\r\n this.signUpToday = \"Sign up today.\";\r\n this.legal = \"Legal\";\r\n this.privacySettings = \"Privacy Settings\";\r\n this.addStoryToFav = \"Add story to favorites\";\r\n this.selectCategory = \"Select a category\";\r\n this.addToFiles = \"Add to my files\";\r\n this.expand = \"Expand\";\r\n this.enterEmail = \"Enter your email\";\r\n this.enterPassword = \"Enter your password\";\r\n this.myAccount = \"My account\";\r\n this.redirectToCms = \"Redirect to cms\";\r\n this.logOut = \"Log out\";\r\n this.noDownloadBoxes = \"No download boxes to show.\";\r\n this.savedStories = \"My Saved Stories\";\r\n this.noStoriesSaved = \"No stories saved. Save stories of interest and come back to them later.\";\r\n this.images = \"Images\";\r\n this.downloadAllImages = \"Download all images\";\r\n this.selectBrand = \"Select a brand\";\r\n this.downloadAllVideos = \"Download all videos\";\r\n this.videos = \"Videos\";\r\n this.downloadAllDocuments = \"Download all documents\";\r\n this.audios = \"Audios\";\r\n this.downloadAllAudios = \"Download all audios\";\r\n this.downloadAll = \"Download all\";\r\n this.items = \"items\";\r\n this.viewArticle = \"View article\";\r\n this.searchForTerm = \"SEARCH FOR A TERM TO SEE RESULTS\";\r\n this.searchNoResults = \"WE COULDN'T FIND A MATCH, PLEASE TRY AGAIN.\";\r\n this.termsAndConditions = \"Terms & Conditions\";\r\n this.privacyPolicy = \"Privacy Policy\";\r\n this.newsletter = \"Newsletter\";\r\n this.suscribeConfirmation = \"Are you sure you want to unsubscribe?\";\r\n this.noBrandsInCustomCategory = \"No brands in this custom category.\";\r\n this.current = \"Current\";\r\n this.files = \"Files\";\r\n this.firstNameRequired = \"First name is required\";\r\n this.lastNameRequired = \"Last name is required\";\r\n this.emailNameRequired = \"Email name is required\";\r\n this.invalidEmail = \"Must be a valid email address\";\r\n this.telephone = \"Telephone number\";\r\n this.max50Characters = \"Max 50 characters\";\r\n this.min4Characters = \"Min 8 characters\";\r\n this.passwordNoSpaces = \"Password cannot contain spaces\";\r\n this.confirmPasswordRequired = \"Confirm password is required\";\r\n this.passwordsNoMatch = \"Passwords do not match.\";\r\n this.currentPassword = \"Current password\";\r\n this.mustEnterFirstPassword = \"You must type your password above first.\";\r\n this.mustEnterOldPassword = \"You must enter your old password.\";\r\n this.done = \"Done\";\r\n this.userType = \"User Type\";\r\n this.mediaUserTypeRequired = \"Media User Type is required\";\r\n this.deleteAccount = \"Delete account\";\r\n this.deleteAccountConfirmation = \"Are you sure you want to delete your account? Please enter your password and confirm your decision.\";\r\n this.incorrectPassword = \"The password is incorrect.\";\r\n this.emailSentSuccess = \"You have successfully sent mail. Thank you for contacting us.\";\r\n this.messageRequired = \"Message is required\";\r\n this.maxLength50 = \"Max length is 50\";\r\n this.or = \"OR\";\r\n this.downloadMediaLogIn = \"To Download Media Content Please Log In\";\r\n this.latestDownloads = \"Latest Downloads\";\r\n this.noDownloads = \"No downloads yet\";\r\n this.unsupportedVideoBrowser = \"Your browser does not support HTML5 video.\";\r\n this.registrationSuccess = \"Registration successful\";\r\n this.activationEmailSent = \"You are just one click away from creating your online account with digitalnewsagency.com. We have sent an activation email to you (please check your spam/junk.)\";\r\n this.activationEmailInstructions = \"Please click the Activate button and you’ll be all set to go. If you have difficulties accessing your account, or have any questions or require any additional information please contact our team on hello@digitalnewsagency.com\";\r\n this.lookForwardMessage = \"We look forward to sharing our content with you.\";\r\n this.thankYou = \"Thank you\";\r\n this.disclaimer = \"Disclaimer\";\r\n this.mediaCentreTitle = \"Media Centre\";\r\n this.mediaCentreSubtitle = \"Welcome to the easyJet media centre, where you'll be able to find all our latest news.\";\r\n }\r\n}\r\n","export class ToastrConfig {\r\n\r\n public static toastrConfig = {\r\n closeButton: true,\r\n timeOut: 2000\r\n };\r\n\r\n public static error = {\r\n closeButton: true,\r\n timeOut: 3000,\r\n toastClass: 'toast-error',\r\n messageClass: 'toast-message',\r\n titleClass: 'toast-title'\r\n };\r\n\r\n public static success = {\r\n closeButton: true,\r\n timeOut: 3000,\r\n toastClass: 'toast-success',\r\n messageClass: 'toast-message',\r\n titleClass: 'toast-title'\r\n }\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostListener,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n} from \"@angular/core\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../../shared/services/my-files.service\";\r\nimport { DownloadModel } from \"../../download/download-model\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { DownloadAddToModel } from \"../../routes/media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { DownloadBoxService } from \"../../shared/services/download-box.service\";\r\nimport { NumberSymbol } from \"@angular/common\";\r\nimport { StringDecoder } from \"string_decoder\";\r\nimport { WebpHelperService } from \"../../shared/services/webp-helper.service\";\r\n\r\n@Component({\r\n selector: \"app-my-files\",\r\n templateUrl: \"./my-files.component.html\",\r\n styleUrls: [\"./my-files.component.less\"],\r\n})\r\nexport class MyFilesComponent implements OnInit {\r\n @Output()\r\n clickedOutsideEvent: EventEmitter = new EventEmitter();\r\n styles: PageStyle;\r\n buttonsHelper = ButtonsHelper;\r\n cart: any = [];\r\n downloadMediaResponse: DownloadModel;\r\n showLoginMessage: boolean = false;\r\n loader: boolean = false;\r\n downloadUrls: string[] = [];\r\n downloadActive: boolean = false;\r\n cancelDownloads: boolean;\r\n user: any;\r\n downloadSubscription: any;\r\n shareCartUrl: string;\r\n language: Language;\r\n copiedUrl: String = \"\";\r\n\r\n constructor(\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private myFilesService: MyFilesService,\r\n private mcService: McService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private eRef: ElementRef,\r\n private downloadBoxService: DownloadBoxService,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cart = myFiles;\r\n this.getDownloadBox();\r\n });\r\n }\r\n\r\n @HostListener(\"document:click\", [\"$event\"])\r\n clickout(event) {\r\n if (\r\n !this.eRef.nativeElement.contains(event.target) &&\r\n !(\r\n event.target.className == \"my-files-container\" ||\r\n event.target.className == \"my-files-text\" ||\r\n event.target.className == \"far fa-folder\" ||\r\n event.target.className == \"my-files-icon\"\r\n )\r\n ) {\r\n this.clickedOutsideEvent.emit(event);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.language = this.languageService.getLanguage();\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.getDownloadBox();\r\n }\r\n\r\n deleteAll() {\r\n this.myFilesService.clearFiles();\r\n }\r\n\r\n deleteFile(mediaId) {\r\n this.myFilesService.deleteFile(mediaId);\r\n }\r\n\r\n shareCart() {\r\n this.shareCartUrl = `${UrlHelper.getCurrentUrlHostOnly()}/download/share/${localStorage.getItem(\r\n \"cart\"\r\n )}`;\r\n }\r\n\r\n cancelDownload() {\r\n if (this.downloadSubscription) {\r\n this.downloadSubscription.unsubscribe();\r\n }\r\n this.downloadActive = false;\r\n this.cancelDownloads = true;\r\n }\r\n\r\n downloadFinishEvent(downloadFiles) {\r\n let user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n user.id = null;\r\n }\r\n let timeNow = Date.now();\r\n let formattedTime = new Date(timeNow).toUTCString();\r\n this.googleAnalytics.emitEvent('Download Box', 'Downloads', 'Download box', `User: ${user.id} | Time: ${formattedTime} | Files: ${downloadFiles}`);\r\n }\r\n\r\n download() {\r\n let startTime = performance.now();\r\n const component = this;\r\n const urls = this.downloadUrls;\r\n const zip = new JSZip();\r\n let count = 0;\r\n const zipFilename = \"download.zip\";\r\n let downloadFiles = \"\";\r\n if (urls.length > 1) {\r\n component.downloadActive = true;\r\n component.cancelDownloads = false;\r\n\r\n urls.forEach((url) => {\r\n const filename = url.split(\"/\")[8];\r\n\r\n if (component.cancelDownloads) {\r\n return;\r\n }\r\n\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (component.cancelDownloads) {\r\n return;\r\n }\r\n downloadFiles += `${filename}, `\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n\r\n if (count === urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n component.downloadActive = false;\r\n component.downloadFinishEvent(downloadFiles);\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n });\r\n }\r\n });\r\n });\r\n } else {\r\n for (const x of urls) {\r\n component.downloadActive = true;\r\n\r\n this.downloadSubscription = this.http\r\n .get(x, { responseType: \"blob\" })\r\n .subscribe(\r\n (blob: Blob) => {\r\n const filename = x.split(\"/\")[8];\r\n\r\n saveAs(blob, filename);\r\n component.downloadActive = false;\r\n component.downloadFinishEvent(downloadFiles);\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n\r\n },\r\n (error) => {\r\n component.downloadActive = false;\r\n }\r\n );\r\n }\r\n }\r\n this.downloadBoxService.createDownloadBox().subscribe((response) => { }, (error) => console.log(error));\r\n }\r\n\r\n getDownloadBox() {\r\n this.loader = true;\r\n this.mcService.downloadBox(this.cart).subscribe(\r\n (response: any) => {\r\n\r\n this.loader = false;\r\n this.downloadMediaResponse = response;\r\n if (\r\n this.downloadMediaResponse.mustRegisterToDownload &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n this.showLoginMessage = true;\r\n return;\r\n }\r\n let mediaLength = 0;\r\n\r\n for (const item of this.downloadMediaResponse.downloadBoxList) {\r\n for (const media of item.media) {\r\n mediaLength++;\r\n }\r\n }\r\n\r\n // if (this.cart.length > mediaLength) {\r\n // this.cart = [];\r\n\r\n // for (const item of this.downloadMediaResponse.downloadBoxList) {\r\n // for (const media of item.media) {\r\n // this.cart.push(media.media.id);\r\n // }\r\n // }\r\n // this.myFilesService.setMyFiles(this.cart);\r\n // console.error(\r\n // \"Some of the selected media has been removed from the story.\"\r\n // );\r\n // }\r\n for (const item of this.downloadMediaResponse.downloadBoxList) {\r\n for (const media of item.media) {\r\n this.downloadUrls.push(media.downloadLinks[0].downloadUrl);\r\n }\r\n }\r\n\r\n this.initVideoFormats(this);\r\n },\r\n (error2) => {\r\n this.loader = false;\r\n this.showLoginMessage = true;\r\n }\r\n );\r\n }\r\n\r\n initVideoFormats(component) {\r\n component.videoFormats = [];\r\n\r\n for (const download of component.downloadMediaResponse.downloadBoxList) {\r\n for (const media of download.media) {\r\n for (const link of media.downloadLinks) {\r\n if (\r\n media.media.mediaType === \"Video\" &&\r\n !component.videoFormats.find((x) => x.label === link.label)\r\n ) {\r\n component.videoFormats.push({ label: link.label });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n const niz = new DownloadAddToModel();\r\n niz.publishedMediaIds = this.cart.publishedMediaIds;\r\n niz.storyMediaIds = this.cart.storyMediaIds;\r\n niz.userId = this.user.id;\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId.toString()\r\n );\r\n });\r\n niz.publishedMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download-pm\",\r\n niz.userId.toString()\r\n );\r\n })\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => { }\r\n );\r\n }\r\n}\r\n","
\r\n 0\">\r\n
\r\n
\r\n {{ language.itemsInBox }} ({{ cart.length || 0 }})\r\n
\r\n \r\n {{ language.deleteAll }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{ dl.media.name | slice : 0 : 10\r\n }}= 10\">...\r\n
\r\n \r\n {{ language.delete }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n {{ language.cancel }}\r\n \r\n \r\n {{ language.share }}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ language.logInMyFiles }}\r\n
\r\n
\r\n {{ language.myFilesNoFiles }}\r\n
\r\n\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {GoogleAnalyticsEventsService} from '../shared/services/google-analytics-events.service';\r\nimport {ErrorService} from '../shared/services/error-service';\r\nimport {PageStyle} from '../models/style/style.model';\r\nimport {FontsAndColorsService} from '../shared/services/fonts-and-colors.service';\r\n\r\n@Component({\r\n selector: 'app-error',\r\n templateUrl: './error.component.html',\r\n styleUrls: ['./error.component.less']\r\n})\r\nexport class ErrorComponent implements OnInit {\r\n styles = new PageStyle();\r\n\r\n public error: any;\r\n\r\n constructor(public fontsAndColorsService: FontsAndColorsService, private errorService: ErrorService, private googleAnalytics: GoogleAnalyticsEventsService) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.error = this.errorService.getError();\r\n //\r\n if (this.error && this.error.action) {\r\n this.googleAnalytics.emitEvent('error', this.error.action, this.error.message);\r\n }\r\n }\r\n\r\n}\r\n","
\r\n \"Error\"\r\n

Ooops sorry, something went wrong!

\r\n

\r\n We are currently working on a fix to have this up and running in no time,\r\n we're
\r\n sorry for any inconvenience and thank you for your patience\r\n

\r\n
\r\n","import {\r\n Component,\r\n Input,\r\n HostListener,\r\n NgZone,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Location } from \"@angular/common\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../../shared/services/my-files.service\";\r\nimport { WebNewsModel } from \"../../routes/news/news-model\";\r\nimport { WebManageMediaModel } from \"../../download/download-model\";\r\nimport { MyFilesModel } from \"../../shared/services/my-files-model\";\r\n\r\n@Component({\r\n selector: \"app-search-results\",\r\n templateUrl: \"./search-results.component.html\",\r\n styleUrls: [\"./search-results.component.less\"],\r\n})\r\nexport class SearchResultsComponent implements OnInit {\r\n @Input() searchResultStories: any;\r\n @Input() searchResultMedia: any;\r\n @Input() searchFrom: any;\r\n @Input() template: number;\r\n @Output() dataEvent = new EventEmitter();\r\n buttonsHelper = ButtonsHelper;\r\n resultStories: any;\r\n resultMedia: any = [];\r\n autoplay: boolean;\r\n mediaId: number;\r\n popup: boolean;\r\n loader: boolean;\r\n storyId: number;\r\n addDropdown: boolean;\r\n user: any;\r\n headerFooter: any;\r\n styles = new PageStyle();\r\n socials: string[] = [];\r\n currentUrl: string;\r\n language: Language;\r\n mediaTop: number;\r\n pageStories = 1;\r\n pageSizeStories = 12;\r\n maxPageStories = 1;\r\n totalCountStories: number;\r\n searchResults: number;\r\n\r\n grid: string;\r\n itemsPerPage = 12;\r\n newsHeadlineLength: number = 120;\r\n pageMedia = 1;\r\n pageSizeMedia = 12;\r\n maxPageMedia = 1;\r\n totalCountMedia: number;\r\n searchModel: any;\r\n loaderMedia = true;\r\n loaderStory = true;\r\n lazyLoadingLoader = false;\r\n showingStories = true;\r\n showLoadMore = true;\r\n cart: MyFilesModel = new MyFilesModel([], []);\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private languageService: LanguageService,\r\n private storageService: StorageService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private location: Location,\r\n private route: ActivatedRoute,\r\n private sanitizer: DomSanitizer,\r\n private http: HttpClient,\r\n ngZone: NgZone,\r\n private myFilesService: MyFilesService\r\n ) {\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cart = myFiles;\r\n });\r\n this.newsHeadlineLength = 90;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 12;\r\n }\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n if (media) {\r\n this.openPopup(+media);\r\n }\r\n });\r\n\r\n window.onresize = (e) => {\r\n ngZone.run(() => {\r\n this.getDimensions();\r\n });\r\n };\r\n }\r\n\r\n addToMyFiles(media) {\r\n let component = this;\r\n if (component.cart.isInMyFiles(media.id, media.isPublished)) {\r\n component.myFilesService.pushMyFiles(media.id, media.isPublished);\r\n }\r\n }\r\n\r\n download(media) {\r\n media.downloading = true;\r\n this.getMediaDetail(media);\r\n }\r\n\r\n allResults() {\r\n this.router.navigateByUrl(\"/results\");\r\n }\r\n\r\n getMediaDetail(media) {\r\n let language = Number(localStorage.getItem(\"lng\"));\r\n let mediaDetailResponseModel;\r\n this.mcService.getMediaDetail(media.id, language).subscribe(\r\n (response: any) => {\r\n mediaDetailResponseModel = response;\r\n if (\r\n mediaDetailResponseModel.mustRegisterToAccess &&\r\n !mediaDetailResponseModel.anonymousShare &&\r\n !localStorage.getItem(\"Token\")\r\n ) {\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n if (mediaDetailResponseModel.downloadLinks.length > 0) {\r\n this.downloadMedia(\r\n mediaDetailResponseModel.downloadLinks[0],\r\n mediaDetailResponseModel,\r\n media\r\n );\r\n }\r\n },\r\n (error) => {\r\n media.downloading = false;\r\n }\r\n );\r\n }\r\n\r\n downloadMedia(download, mediaDetailResponseModel, media) {\r\n const iOS =\r\n !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);\r\n\r\n if (iOS) {\r\n try {\r\n (window as any).webkit.messageHandlers.downloadClicked.postMessage({\r\n url: download.downloadUrl,\r\n });\r\n } catch (err) {\r\n media.downloading = false;\r\n }\r\n\r\n return;\r\n }\r\n const component = this;\r\n download.downloadActive = true;\r\n this.http.get(download.downloadUrl, { responseType: \"blob\" }).subscribe(\r\n (blob: Blob) => {\r\n const filename = download.downloadUrl.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n media.downloading = false;\r\n if (component.user.cmsUser == null) {\r\n component.addDownload(media.id);\r\n }\r\n },\r\n (error) => {\r\n media.downloading = false;\r\n }\r\n );\r\n }\r\n\r\n addDownload(mediaId) {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n let niz: any = {};\r\n niz.mediaIds = [mediaId];\r\n niz.userId = this.user.id;\r\n niz.mediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n updateMedia(e) {\r\n for (const media of this.resultMedia.media) {\r\n if (media.id === e.id) {\r\n media.downloads = e.downloads;\r\n media.shares = e.shares;\r\n media.views = e.views;\r\n }\r\n }\r\n }\r\n\r\n receiveDataFromChild(event) {\r\n this.dataEvent.emit(event);\r\n }\r\n\r\n openPopup(id: number) {\r\n this.popup = true;\r\n this.mediaId = id;\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.getDimensions();\r\n }\r\n\r\n ngOnInit() {\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.loaderMedia = true;\r\n this.loaderStory = true;\r\n this.headerFooter = JSON.parse(localStorage.getItem(\"headerfooter\"));\r\n if (this.headerFooter != null && this.headerFooter != undefined) {\r\n this.headerFooter.headerLinks.forEach((x) => (x.active = false));\r\n this.headerFooter.footerLinks.forEach((x) => (x.active = false));\r\n }\r\n this.storageService.getSearchModel().subscribe((searchModel) => {\r\n this.searchModel = searchModel;\r\n this.grid = this.searchModel.stories ? \"Columns3\" : \"Columns4\";\r\n if (window.innerWidth <= 1100) {\r\n this.grid = \"Columns2\";\r\n }\r\n });\r\n\r\n this.user = TokenManagerService.getUser();\r\n\r\n this.storageService.getSearchItemStories().subscribe((term) => {\r\n this.loaderStory = true;\r\n this.pageStories = this.searchModel.page;\r\n this.currentUrl = window.location.href;\r\n this.resultStories = term;\r\n this.maxPageStories = Math.ceil(term.totalCount / this.pageSizeStories);\r\n if (this.resultStories.socialSharing != null) {\r\n this.socials = this.resultStories.socialSharing;\r\n }\r\n this.loaderStory = false;\r\n // setTimeout(() => {\r\n // }, 3000);\r\n });\r\n\r\n this.storageService.getSearchItemMedia().subscribe((term) => {\r\n this.loaderMedia = true;\r\n this.pageMedia = this.searchModel.page;\r\n this.currentUrl = window.location.href;\r\n this.resultMedia = term;\r\n this.maxPageMedia = Math.ceil(term.totalCount / this.itemsPerPage);\r\n if (this.resultMedia.media) {\r\n for (let f of this.resultMedia.media) {\r\n if (f.mediaType === \"Audio\" || f.mediaType === \"Video\") {\r\n f.mediaLengthMin = Math.floor(f.mediaLenght / 60);\r\n f.mediaLengthSec = f.mediaLenght - f.mediaLengthMin * 60;\r\n }\r\n }\r\n }\r\n\r\n if (this.resultMedia.socialSharing != null) {\r\n this.socials = this.resultMedia.socialSharing;\r\n }\r\n if (this.resultMedia.media != undefined) {\r\n const niz = this.resultMedia.media;\r\n for (const x of niz) {\r\n if (x.mediaType === \"Document\") {\r\n x.thumbUrl = \"assets/images/document_default.png\";\r\n } else if (x.mediaType === \"Audio\") {\r\n x.thumbUrl = \"assets/images/audio_default.png\";\r\n }\r\n }\r\n } else {\r\n // setTimeout(() => {\r\n this.loaderMedia = false;\r\n // }, 3000);\r\n\r\n return;\r\n }\r\n // setTimeout(() => {\r\n this.loaderMedia = false;\r\n this.getDimensions();\r\n // }, 3000);\r\n });\r\n }\r\n\r\n getDimensions() {\r\n const mediaPosition = document.getElementById(\r\n \"media-wrapper\"\r\n ) as HTMLElement;\r\n this.mediaTop = mediaPosition?.offsetTop;\r\n if (window.outerWidth < 768) {\r\n this.searchResults = 6;\r\n } else {\r\n this.searchResults = 10;\r\n }\r\n }\r\n\r\n showSubCategory(news) {\r\n news.subCategory = !news.subCategory;\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.replace(\"results\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.resultStories.stories.find((x) => x.staggingStoryId == storyId)\r\n .storyTitle\r\n )\r\n );\r\n }\r\n\r\n readMore(id) {\r\n //window.scrollTo(0, 0);\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.resultStories.stories.find(\r\n (x) => x.staggingStoryId == id.staggingStoryId\r\n ).storyTitle\r\n ),\r\n ]);\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.resultStories.stories) {\r\n if (x.storyId === id) {\r\n x.dropdown = !x.dropdown;\r\n }\r\n }\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.autoplay = false;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n this.location.replaceState(media.relativeShareUrl);\r\n }\r\n\r\n openMediaPopupAutplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n this.location.replaceState(media.relativeShareUrl);\r\n }\r\n}\r\n","
\r\n
\r\n \r\n

Stories

\r\n

\r\n {{ language.searchNoResults }}\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
view more
\r\n
\r\n \r\n
\r\n
\r\n \r\n

Media Library

\r\n

\r\n {{ language.searchNoResults }}\r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
view more
\r\n
\r\n
\r\n
\r\n\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Component, EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { McService } from '../../services/mc-service';\r\nimport { TokenManagerService } from '../../services/token-manager.service';\r\nimport { StorageService } from '../../services/storage.service';\r\nimport { fbModel, LoginModel } from '../../../login/login-model';\r\nimport { FacebookService, LoginResponse } from 'ngx-facebook';\r\nimport { CustomValidators } from 'ng2-validation';\r\nimport { Router } from '@angular/router';\r\nimport { LayoutModel } from \"../../../layout/layout-model\";\r\nimport { FontsAndColorsService } from '../../services/fonts-and-colors.service';\r\nimport { PageStyle } from '../../../models/style/style.model';\r\nimport { LanguageService } from '../../../shared/services/language.service';\r\nimport { Language } from '../../../models/language/language.model';\r\nimport { SavedStoryService } from '../../services/saved-story.service';\r\nimport { MyFilesService } from '../../services/my-files.service';\r\n\r\n@Component({\r\n selector: 'app-loginpopup',\r\n templateUrl: './loginpopup.component.html',\r\n styleUrls: ['./loginpopup.component.less']\r\n})\r\nexport class LoginpopupComponent implements OnInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n\r\n @Input() loginPopup: boolean;\r\n @Output() loginPopupChange = new EventEmitter();\r\n @Output() loginSuccessfulChange = new EventEmitter();\r\n loggedUserName: string;\r\n loginModel = new LoginModel();\r\n response: any;\r\n loader: boolean;\r\n valForm: FormGroup;\r\n fbData = new fbModel();\r\n token: string;\r\n styles = new PageStyle();\r\n language: Language;\r\n\r\n\r\n constructor(private mcService: McService,\r\n private languageService: LanguageService,\r\n private fb: FacebookService,\r\n private form: FormBuilder,\r\n private authLoginService: TokenManagerService,\r\n private router: Router,\r\n private sService: StorageService,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private savedStoryService: SavedStoryService,\r\n private myFilesService: MyFilesService) {\r\n //\r\n this.valForm = this.form.group({\r\n 'password': [null, Validators.required],\r\n 'username': [null, Validators.compose([Validators.required, CustomValidators.email])],\r\n });\r\n\r\n const headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n\r\n fb.init({\r\n appId: headerFooter.facebookAppId,\r\n version: 'v6.0'\r\n });\r\n const token = JSON.parse(localStorage.getItem('Token'));\r\n this.token = token && token.token;\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n }\r\n\r\n @HostListener('document:keyup', ['$event'])\r\n handleKeyboardEvent(event: KeyboardEvent) {\r\n if (event.keyCode === 27) {\r\n this.close();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n // if(localStorage.getItem('Token') !== null){\r\n // this.router.navigateByUrl('/Home');\r\n // }\r\n window.scrollTo(0, 0);\r\n\r\n this.sService.getLogin().subscribe(term => {\r\n this.layoutResponseModel = term;\r\n });\r\n }\r\n\r\n login() {\r\n this.fb.login()\r\n .then((res: LoginResponse) => {\r\n this.mcService.logInFb(res.authResponse.accessToken)\r\n .subscribe((response: any) => {\r\n //\r\n const token = response.token;\r\n if (token) {\r\n this.token = token;\r\n\r\n if (response.user.role === 3 || response.user.role === 4 || response.user.role === 5 || response.user.role === 6) {\r\n return observableThrowError('Wrong email or password!');\r\n }\r\n localStorage.setItem('Token', JSON.stringify({ token: token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n this.sService.setName(response.user.fullName);\r\n this.router.navigate(['/']);\r\n } else {\r\n return false;\r\n }\r\n },\r\n (error) => {\r\n //\r\n });\r\n })\r\n .catch(this.handleError);\r\n }\r\n\r\n st() {\r\n this.fb.api('/me?fields=email,first_name,last_name').then(\r\n (response) => {\r\n //\r\n this.fbData.email = response.email;\r\n this.fbData.facebookId = response.id;\r\n this.fbData.firstName = response.first_name;\r\n this.fbData.lastName = response.last_name;\r\n // this.loginModel.email=response.email;\r\n // this.loginModel.password='';\r\n this.mcService.logInFb(this.fbData)\r\n .subscribe((response: any) => {\r\n\r\n const token = response.token;\r\n if (token) {\r\n this.token = token;\r\n \r\n\r\n if (response.user.role === 3 || response.user.role === 4 || response.user.role === 5 || response.user.role === 6) {\r\n return observableThrowError('Wrong email or password!');\r\n }\r\n localStorage.setItem('Token', JSON.stringify({ token: token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n this.sService.setName(response.user.fullName);\r\n this.router.navigate(['/']);\r\n } else {\r\n return false;\r\n }\r\n\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n )\r\n .catch(this.handleError);\r\n }\r\n\r\n\r\n registerPage() {\r\n this.router.navigateByUrl('/register');\r\n }\r\n\r\n\r\n private handleError(error) {\r\n console.error('Error processing action', error);\r\n }\r\n\r\n submitLoginForm(e) {\r\n e.stopPropagation();\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n if (this.valForm.valid) {\r\n this.loader = true;\r\n this.authLoginService.login(this.loginModel)\r\n .subscribe((response: any) => {\r\n this.response = response;\r\n this.loader = false;\r\n this.loggedUserName = TokenManagerService.getUser().fullName;\r\n // this.isPassowordSet = TokenManagerService.getUser().isPasswordSet;\r\n this.sService.setName(this.loggedUserName);\r\n // this.sService.setPw(this.isPassowordSet);\r\n // this.router.navigate(['/Home']);\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n this.loginSuccessfulChange.emit(true);\r\n\r\n this.close();\r\n\r\n this.savedStoryService.getIds();\r\n\r\n // const toast: Toast = {\r\n // type: 'success',\r\n // body: 'Logged in successfully!',\r\n // showCloseButton: true,\r\n // closeHtml: '
'\r\n //\r\n // };\r\n // this.toasterService.pop(toast);\r\n // setTimeout(() => {\r\n // this.toasterService.clear(toast.toastId, toast.toastContainerId);\r\n // }, 2000)\r\n },\r\n (error) => {\r\n this.loader = false;\r\n //\r\n });\r\n }\r\n }\r\n\r\n close() {\r\n this.loginPopupChange.emit(false);\r\n }\r\n\r\n forgotPassword() {\r\n this.router.navigateByUrl('/forgotpassword');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{ language.downloadMediaLogIn }}
\r\n
{{language.signIn}}
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.emailNameRequired }}\r\n \r\n Must\r\n be a valid email address\r\n
\r\n
\r\n \r\n \r\n \r\n Password is required\r\n \r\n
\r\n
{{language.forgotPassword}}
\r\n
\r\n \r\n \r\n
{{ language.or }}
\r\n
\r\n \r\n {{language.signInFb}}\r\n
\r\n
\r\n \r\n\r\n
{{ language.or }}
\r\n
{{language.signInTw}}
\r\n
\r\n
\r\n
\r\n
or {{language.register}}
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n","export class TestimonialsViewModel {\r\n public testimonials: TestimonialsModel[];\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n}\r\n\r\nexport class TestimonialsModel{\r\n public imageUrl: string;\r\n public name: string;\r\n public clientLogoUrl: string;\r\n public text: string;\r\n public date: string;\r\n}\r\n","import { McService } from \"../../shared/services/mc-service\";\r\nimport { ContactModel } from \"./contact-model\";\r\nimport { MapsAPILoader } from \"@agm/core\";\r\n\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { CustomValidators } from \"ng2-validation\";\r\nimport { Router } from \"@angular/router\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\n\r\ndeclare var google: any;\r\n\r\n@Component({\r\n selector: \"app-contact\",\r\n templateUrl: \"./contact.component.html\",\r\n styleUrls: [\"./contact.component.less\"],\r\n})\r\nexport class ContactComponent implements OnInit {\r\n london = true;\r\n newYork = false;\r\n loader: boolean;\r\n lat: number;\r\n lng: number = 7.809007;\r\n lata: number;\r\n lnga: number;\r\n latf: number;\r\n lngf: number;\r\n lats: number;\r\n lngs: number;\r\n address: any;\r\n address2: any;\r\n zoom = 14;\r\n locationCity: string;\r\n message = false;\r\n mailSent: boolean;\r\n styles = new PageStyle();\r\n valForm: FormGroup;\r\n language: Language;\r\n\r\n mapStyle = [\r\n {\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#f5f5f5\",\r\n },\r\n ],\r\n },\r\n {\r\n elementType: \"labels.icon\",\r\n stylers: [\r\n {\r\n visibility: \"off\",\r\n },\r\n ],\r\n },\r\n {\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#616161\",\r\n },\r\n ],\r\n },\r\n {\r\n elementType: \"labels.text.stroke\",\r\n stylers: [\r\n {\r\n color: \"#f5f5f5\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"administrative\",\r\n elementType: \"labels.text\",\r\n stylers: [\r\n {\r\n visibility: \"off\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"administrative.country\",\r\n elementType: \"labels.text\",\r\n stylers: [\r\n {\r\n visibility: \"off\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"administrative.land_parcel\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#bdbdbd\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"landscape\",\r\n elementType: \"geometry.fill\",\r\n stylers: [\r\n {\r\n color: \"#ffffff\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"landscape.natural\",\r\n elementType: \"geometry.fill\",\r\n stylers: [\r\n {\r\n color: \"#e7f3d5\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi\",\r\n stylers: [\r\n {\r\n visibility: \"on\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#eeeeee\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#757575\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.attraction\",\r\n elementType: \"labels.icon\",\r\n stylers: [\r\n {\r\n visibility: \"on\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.business\",\r\n elementType: \"labels.icon\",\r\n stylers: [\r\n {\r\n visibility: \"on\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.medical\",\r\n elementType: \"geometry.fill\",\r\n stylers: [\r\n {\r\n color: \"#f8edf1\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.medical\",\r\n elementType: \"labels.icon\",\r\n stylers: [\r\n {\r\n visibility: \"on\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.park\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#e5e5e5\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.park\",\r\n elementType: \"geometry.fill\",\r\n stylers: [\r\n {\r\n color: \"#e7f3d5\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.park\",\r\n elementType: \"geometry.stroke\",\r\n stylers: [\r\n {\r\n color: \"#d7e9b7\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.park\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#9e9e9e\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"poi.school\",\r\n elementType: \"labels.icon\",\r\n stylers: [\r\n {\r\n visibility: \"on\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"road\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#ffffff\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"road\",\r\n elementType: \"geometry.fill\",\r\n stylers: [\r\n {\r\n color: \"#eaeaea\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"road.arterial\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#757575\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"road.highway\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#dadada\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"road.highway\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#616161\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"road.local\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#9e9e9e\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"transit.line\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#e5e5e5\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"transit.station\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#eeeeee\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"water\",\r\n elementType: \"geometry\",\r\n stylers: [\r\n {\r\n color: \"#c9c9c9\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"water\",\r\n elementType: \"geometry.fill\",\r\n stylers: [\r\n {\r\n color: \"#eaf7fa\",\r\n },\r\n ],\r\n },\r\n {\r\n featureType: \"water\",\r\n elementType: \"labels.text.fill\",\r\n stylers: [\r\n {\r\n color: \"#9e9e9e\",\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n contactUsResponse = new ContactModel();\r\n\r\n constructor(\r\n private mcService: McService,\r\n private mapsAPILoader: MapsAPILoader,\r\n private fb: FormBuilder,\r\n private languageService: LanguageService,\r\n private router: Router,\r\n private fontsAndColorsService: FontsAndColorsService\r\n ) {\r\n this.valForm = this.fb.group({\r\n firstname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n lastname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n telephone: [null],\r\n company: [null],\r\n email: [\r\n null,\r\n Validators.compose([\r\n Validators.required,\r\n CustomValidators.email,\r\n Validators.maxLength(50),\r\n ]),\r\n ],\r\n message: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(500)]),\r\n ],\r\n });\r\n\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.loader = true;\r\n this.getContactUs();\r\n\r\n this.valForm.controls[\"firstname\"].setValidators(Validators.required);\r\n this.valForm.controls[\"lastname\"].setValidators(Validators.required);\r\n this.valForm.controls[\"message\"].setValidators(Validators.required);\r\n window.scrollTo(0, 0);\r\n }\r\n\r\n geocodeLatLng(geocoder, lat, lng) {\r\n let latlng = { lng: lng, lat: lat };\r\n geocoder.geocode({ location: latlng }, (results, status) => {\r\n if (status === \"OK\") {\r\n if (results[0]) {\r\n for (let i = 0; results[0].address_components.length > i; i++) {\r\n if (results[0].address_components[i].types[0] === \"route\") {\r\n this.address = results[2].formatted_address;\r\n }\r\n }\r\n } else {\r\n }\r\n } else {\r\n }\r\n });\r\n }\r\n\r\n geocodeLatLng2(geocoder, lat, lng) {\r\n let latlng = { lng: lng, lat: lat };\r\n geocoder.geocode({ location: latlng }, (results, status) => {\r\n if (status === \"OK\") {\r\n if (results[0]) {\r\n for (let i = 0; results[0].address_components.length > i; i++) {\r\n if (results[0].address_components[i].types[0] === \"street_number\") {\r\n this.address2 = results[0].address_components[i].long_name;\r\n }\r\n if (results[0].address_components[i].types[0] === \"route\") {\r\n this.address2 += \" \" + results[0].address_components[i].long_name;\r\n }\r\n\r\n if (results[0].address_components[i].types[0] === \"locality\") {\r\n this.address2 +=\r\n \", \" + results[0].address_components[i].long_name;\r\n }\r\n if (\r\n results[0].address_components[i].types[0] ===\r\n \"administrative_area_level_1\"\r\n ) {\r\n this.address2 +=\r\n \", \" + results[0].address_components[i].short_name;\r\n }\r\n if (results[0].address_components[i].types[0] === \"postal_code\") {\r\n this.address2 += \" \" + results[0].address_components[i].long_name;\r\n }\r\n }\r\n } else {\r\n }\r\n } else {\r\n }\r\n });\r\n }\r\n\r\n getMap() {\r\n this.mapsAPILoader.load().then(() => {\r\n let geocoder = new google.maps.Geocoder();\r\n this.geocodeLatLng(geocoder, this.latf, this.lngf);\r\n this.geocodeLatLng2(geocoder, this.lats, this.lngs);\r\n });\r\n }\r\n\r\n getContactUs() {\r\n this.loader = true;\r\n this.mcService.getContactUs(1).subscribe(\r\n (response: any) => {\r\n this.contactUsResponse = response;\r\n this.loader = false;\r\n this.latf = response.latitude;\r\n this.lngf = response.longitude;\r\n this.lnga = this.lngf;\r\n this.lata = this.latf;\r\n this.lats = response.latitude2;\r\n this.lngs = response.longitude2;\r\n this.getMap();\r\n },\r\n (error) => {\r\n //\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n\r\n sendEmail() {\r\n this.message = false;\r\n this.mailSent = true;\r\n this.mcService.sendEmail(this.contactUsResponse.emailModel).subscribe(\r\n (response) => {\r\n this.message = true;\r\n this.mailSent = false;\r\n this.valForm.reset();\r\n },\r\n (error) => {}\r\n );\r\n }\r\n\r\n switchLondon() {\r\n this.london = true;\r\n this.newYork = false;\r\n }\r\n\r\n switchNewYork() {\r\n this.london = false;\r\n this.newYork = true;\r\n }\r\n\r\n changeCord(lng, lat, sity) {\r\n this.lnga = lng;\r\n this.lata = lat;\r\n if (sity == \"london\") {\r\n this.london = true;\r\n this.newYork = false;\r\n } else {\r\n this.newYork = true;\r\n this.london = false;\r\n }\r\n }\r\n\r\n onSubmit(e) {\r\n e.stopPropagation();\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n\r\n if (this.valForm.valid) {\r\n this.sendEmail();\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

\r\n {{ contactUsResponse.title }}\r\n

\r\n

{{ contactUsResponse.subtitle }}

\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ language.firstNameRequired }}\r\n
\r\n
\r\n \r\n \r\n {{ language.lastNameRequired }}\r\n
\r\n
\r\n \r\n {{ language.emailNameRequired }}\r\n {{ language.invalidEmail }}\r\n \r\n {{ language.maxLength50 }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{ language.messageRequired }}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

\r\n {{ language.emailSentSuccess }}\r\n

\r\n
\r\n \r\n
","import{Pipe,PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name:'shorten'\r\n})\r\n\r\nexport class ShortenPipe implements PipeTransform{\r\n transform(value:any,limit:number){\r\n if(value.length>limit){\r\n return value.substr(0,limit) + ' ...';\r\n }\r\n return value;\r\n }\r\n}","import { Component, Input, OnInit } from '@angular/core';\r\nimport { McService } from '../shared/services/mc-service';\r\nimport { deleteModel, DownloadMediaModel, DownloadModel } from './download-model';\r\nimport { saveAs } from 'file-saver';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport * as JSZip from 'jszip';\r\nimport * as JSZipUtils from 'jszip-utils';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TokenManagerService } from '../shared/services/token-manager.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DownloadAddToModel } from '../routes/media/media-model';\r\nimport { PageStyle } from '../models/style/style.model';\r\nimport { FontsAndColorsService } from '../shared/services/fonts-and-colors.service';\r\nimport { GoogleAnalyticsEventsService } from '../shared/services/google-analytics-events.service';\r\nimport { LanguageService } from '../shared/services/language.service';\r\nimport { Language } from '../models/language/language.model';\r\nimport { UrlHelper } from '../shared/helpers/url-helper';\r\nimport { ToastrConfig } from '../shared/helpers/toastr-config';\r\nimport { WebpHelperService } from '../shared/services/webp-helper.service';\r\nimport { MyFilesService } from '../shared/services/my-files.service';\r\nimport { MyFilesModel } from '../shared/services/my-files-model';\r\n\r\n@Component({\r\n selector: 'app-download',\r\n templateUrl: './download.component.html',\r\n styleUrls: ['./download.component.less']\r\n})\r\nexport class DownloadComponent implements OnInit {\r\n @Input() dropdownSize: string;\r\n\r\n loginPopup: boolean;\r\n popup: boolean;\r\n loader: boolean;\r\n autoplay: boolean;\r\n isUrlCopied: boolean;\r\n disabledButton = false;\r\n dropdown = false;\r\n downloadActive = false;\r\n cancelDownloads = false;\r\n\r\n mediaId: number;\r\n categoryLabel: string;\r\n shareCartUrl: string;\r\n\r\n styles: PageStyle;\r\n videoFormats: DownloadMediaModel[] = [];\r\n deleteModel: deleteModel[] = [];\r\n downloadMediaResponse: DownloadModel;\r\n language: Language;\r\n\r\n cartItems: MyFilesModel;\r\n forDownload: any[] = [];\r\n publishedDownloadIds: any[] = [];\r\n storyDownloadIds: any[] = [];\r\n user: any;\r\n downloadSubscription: any;\r\n\r\n constructor(private route: ActivatedRoute, private mcService: McService, private http: HttpClient, private languageService: LanguageService,\r\n private router: Router, private toastr: ToastrService, public fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService, public webPHelper: WebpHelperService, private myFilesService: MyFilesService) {\r\n\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n\r\n this.route.params.subscribe(params => {\r\n if (params.ids) {\r\n // \r\n const cartIds = JSON.parse(decodeURIComponent(params.ids));\r\n localStorage.setItem('cart', JSON.stringify(cartIds));\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.user = TokenManagerService.getUser();\r\n this.getDownloadBox();\r\n window.scrollTo(0, 0);\r\n this.popup = false;\r\n this.categoryLabel = this.language.availableFormats;\r\n }\r\n\r\n getDownloadBox() {\r\n this.loader = true;\r\n this.cartItems = this.myFilesService.getMyFiles();\r\n\r\n this.mcService.downloadBox(this.cartItems)\r\n .subscribe((response: any) => {\r\n this.downloadMediaResponse = response;\r\n if (this.downloadMediaResponse.mustRegisterToDownload && localStorage.getItem('Token') === null) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n }\r\n // if (response.mustRegisterToAccess && localStorage.getItem('Token') == null) {\r\n // this.router.navigateByUrl('/register');\r\n // }\r\n\r\n let mediaLength = 0;\r\n\r\n for (const item of this.downloadMediaResponse.downloadBoxList) {\r\n for (const media of item.media) {\r\n mediaLength++;\r\n }\r\n }\r\n\r\n if (this.cartItems.length > mediaLength) {\r\n\r\n this.cartItems = new MyFilesModel([], []);\r\n\r\n for (const item of this.downloadMediaResponse.downloadBoxList) {\r\n for (const media of item.media) {\r\n if (media.media.isPublished) {\r\n this.cartItems.publishedMediaIds.push(media.media.id);\r\n } else {\r\n this.cartItems.storyMediaIds.push(media.media.id);\r\n }\r\n }\r\n\r\n }\r\n\r\n this.myFilesService.setMyFiles(this.cartItems);\r\n\r\n this.toastr.error('Some of the selected media has been removed from the story.', 'Error', ToastrConfig.error);\r\n\r\n }\r\n\r\n this.loader = false;\r\n\r\n this.initVideoFormats(this);\r\n },\r\n (error2) => {\r\n //\r\n });\r\n }\r\n\r\n mediaChecked(media, dl, event) {\r\n const component = this;\r\n media.checked = !media.checked;\r\n const index = this.forDownload.indexOf(media);\r\n if (component.forDownload.indexOf(media) === -1 && media.checked) {\r\n component.forDownload.push(media.downloadUrl);\r\n if (dl.isPublished) {\r\n component.publishedDownloadIds.push(dl.id);\r\n } else {\r\n component.storyDownloadIds.push(dl.id);\r\n }\r\n const delModel = new deleteModel();\r\n delModel.id = dl.id;\r\n delModel.url = media.downloadUrl;\r\n component.deleteModel.push(delModel);\r\n\r\n } else if (!media.checked) {\r\n component.forDownload.splice(index, 1);\r\n if (dl.isPublished) {\r\n component.publishedDownloadIds.splice(component.publishedDownloadIds.indexOf(dl.id), 1);\r\n } else {\r\n component.storyDownloadIds.splice(component.storyDownloadIds.indexOf(dl.id), 1);\r\n }\r\n }\r\n event.target.style.backgroundColor = event.target.checked ? this.styles.style.mainIdentifyingColor : '';\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.autoplay = false;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openMediaPopupAutoplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n downloadVideoType(vt) {\r\n const component = this;\r\n // component.disabledButton = true;\r\n const zip = new JSZip();\r\n let count = 0;\r\n const zipFilename = 'download.zip';\r\n const urls = [];\r\n\r\n this.loader = true;\r\n\r\n for (let i = 0; i < component.downloadMediaResponse.downloadBoxList.length; i++) {\r\n\r\n const mediaDeleteList = [];\r\n\r\n for (let y = 0; y < component.downloadMediaResponse.downloadBoxList[i].media.length; y++) {\r\n for (let z = 0; z < component.downloadMediaResponse.downloadBoxList[i].media[y].downloadLinks.length; z++) {\r\n if (component.downloadMediaResponse.downloadBoxList[i].media[y].downloadLinks[z].label === vt.label &&\r\n component.downloadMediaResponse.downloadBoxList[i].media[y].media.mediaType === 'Video') {\r\n const split = component.downloadMediaResponse.downloadBoxList[i].media[y].downloadLinks[z].downloadUrl.split('/');\r\n const filename = split[split.length - 1];\r\n\r\n urls.push(component.downloadMediaResponse.downloadBoxList[i].media[y].downloadLinks[z].downloadUrl);\r\n\r\n mediaDeleteList.push(this.downloadMediaResponse.downloadBoxList[i].media[y]);\r\n }\r\n }\r\n }\r\n\r\n for (let x = 0; x < mediaDeleteList.length; x++) {\r\n this.downloadMediaResponse.downloadBoxList[i].media\r\n .splice(this.downloadMediaResponse.downloadBoxList[i].media.indexOf(mediaDeleteList[x]), 1);\r\n }\r\n\r\n }\r\n\r\n\r\n urls.forEach(function (url) {\r\n const filename = url.split('/')[8];\r\n\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err; // or handle the error\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count === urls.length) {\r\n\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n\r\n saveAs(content, zipFilename);\r\n component.loader = false;\r\n component.resetDownloadArrays(component);\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n });\r\n }\r\n });\r\n });\r\n\r\n }\r\n\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem('Token') === null) {\r\n this.user.id = null;\r\n }\r\n const niz = new DownloadAddToModel();\r\n niz.publishedMediaIds = this.publishedDownloadIds;\r\n niz.storyMediaIds = this.storyDownloadIds;\r\n niz.userId = this.user.id;\r\n niz.storyMediaIds.forEach(mediaId => {\r\n this.googleAnalytics.emitEvent('media/' + mediaId, 'download', niz.userId.toString());\r\n });\r\n niz.publishedMediaIds.forEach(mediaId => {\r\n this.googleAnalytics.emitEvent('media/' + mediaId, 'download-pm', niz.userId.toString());\r\n });\r\n this.mcService.addDownloadToMedia(niz)\r\n .subscribe((response) => {\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n\r\n cancelDownload() {\r\n if (this.downloadSubscription) {\r\n this.downloadSubscription.unsubscribe();\r\n }\r\n\r\n this.downloadActive = false;\r\n this.disabledButton = false;\r\n this.cancelDownloads = true;\r\n }\r\n\r\n download() {\r\n const component = this;\r\n const urls = this.forDownload;\r\n const zip = new JSZip();\r\n let count = 0;\r\n const zipFilename = 'download.zip';\r\n\r\n if (this.forDownload.length > 1) {\r\n\r\n for (let i = 0; i < this.downloadMediaResponse.downloadBoxList.length; i++) {\r\n\r\n const mediaDeleteList = [];\r\n\r\n for (let j = 0; j < this.downloadMediaResponse.downloadBoxList[i].media.length; j++) {\r\n for (let c = 0; c < this.deleteModel.length; c++) {\r\n if (this.downloadMediaResponse.downloadBoxList[i].media[j].media.id === this.deleteModel[c].id) {\r\n const index = this.downloadMediaResponse.downloadBoxList[i].media\r\n .indexOf(this.downloadMediaResponse.downloadBoxList[i].media[j]);\r\n\r\n mediaDeleteList.push(this.downloadMediaResponse.downloadBoxList[i].media[j]);\r\n if (this.downloadMediaResponse.downloadBoxList[i].media[j].media.isPublished) {\r\n this.cartItems.publishedMediaIds.splice(index, 1);\r\n } else {\r\n this.cartItems.storyMediaIds.splice(index, 1);\r\n }\r\n\r\n this.myFilesService.setMyFiles(this.cartItems);\r\n\r\n }\r\n }\r\n }\r\n\r\n for (let x = 0; x < mediaDeleteList.length; x++) {\r\n this.downloadMediaResponse.downloadBoxList[i].media\r\n .splice(this.downloadMediaResponse.downloadBoxList[i].media.indexOf(mediaDeleteList[x]), 1);\r\n }\r\n }\r\n\r\n\r\n component.disabledButton = true;\r\n component.downloadActive = true;\r\n component.cancelDownloads = false;\r\n\r\n urls.forEach(url => {\r\n const filename = url.split('/')[8];\r\n\r\n if (component.cancelDownloads) {\r\n return;\r\n }\r\n\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n\r\n if (component.cancelDownloads) {\r\n return;\r\n }\r\n\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n\r\n if (count === urls.length) {\r\n zip.generateAsync({ type: 'blob' }).then(function (content) {\r\n\r\n saveAs(content, zipFilename);\r\n\r\n component.resetDownloadArrays(component);\r\n\r\n component.disabledButton = false;\r\n component.downloadActive = false;\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n\r\n });\r\n }\r\n });\r\n });\r\n } else {\r\n for (const x of this.forDownload) {\r\n\r\n component.disabledButton = true;\r\n component.downloadActive = true;\r\n\r\n for (let i = 0; i < this.downloadMediaResponse.downloadBoxList.length; i++) {\r\n\r\n const mediaDeleteList = [];\r\n\r\n for (let j = 0; j < this.downloadMediaResponse.downloadBoxList[i].media.length; j++) {\r\n for (let c = 0; c < this.deleteModel.length; c++) {\r\n if (this.downloadMediaResponse.downloadBoxList[i].media[j].media.id === this.deleteModel[c].id) {\r\n const index = this.downloadMediaResponse.downloadBoxList[i].media\r\n .indexOf(this.downloadMediaResponse.downloadBoxList[i].media[j]);\r\n\r\n mediaDeleteList.push(this.downloadMediaResponse.downloadBoxList[i].media[j]);\r\n\r\n if (this.downloadMediaResponse.downloadBoxList[i].media[j].media.isPublished) {\r\n this.cartItems.publishedMediaIds.splice(index, 1);\r\n } else {\r\n this.cartItems.storyMediaIds.splice(index, 1);\r\n }\r\n this.myFilesService.setMyFiles(this.cartItems);\r\n }\r\n }\r\n }\r\n\r\n for (let item = 0; x < mediaDeleteList.length; item++) {\r\n this.downloadMediaResponse.downloadBoxList[i].media\r\n .splice(this.downloadMediaResponse.downloadBoxList[i].media.indexOf(mediaDeleteList[item]), 1);\r\n }\r\n\r\n }\r\n\r\n this.downloadSubscription = this.http.get(x, { responseType: 'blob' })\r\n .subscribe((blob: Blob) => {\r\n\r\n const filename = x.split('/')[8];\r\n\r\n saveAs(blob, filename);\r\n\r\n component.resetDownloadArrays(component);\r\n\r\n component.disabledButton = false;\r\n component.downloadActive = false;\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n },\r\n (error) => {\r\n component.disabledButton = false;\r\n component.downloadActive = false;\r\n });\r\n }\r\n }\r\n }\r\n\r\n\r\n resetDownloadArrays(component) {\r\n component.forDownload = [];\r\n component.deleteModel = [];\r\n component.initVideoFormats(component);\r\n }\r\n\r\n initVideoFormats(component) {\r\n component.videoFormats = [];\r\n\r\n for (const download of component.downloadMediaResponse.downloadBoxList) {\r\n for (const media of download.media) {\r\n for (const link of media.downloadLinks) {\r\n if (media.media.mediaType === 'Video' && !component.videoFormats.find(x => x.label === link.label)) {\r\n component.videoFormats.push({ label: link.label });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n shareCart() {\r\n this.shareCartUrl = `${UrlHelper.getCurrentUrlHostOnly()}/download/share/${localStorage.getItem('cart')}`;\r\n }\r\n\r\n closeLoader() {\r\n this.loader = false;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ language.downloadBox }}\r\n

\r\n
\r\n {{ language.downloadVideoInFormat }}:\r\n
\r\n \r\n
\r\n
\r\n {{ language.shareCart }}\r\n
\r\n
\r\n
{{ shareCartUrl }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ dl.storyTitle }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"Download\r\n \r\n \"dl.media.name\"\r\n\r\n \"dl.media.name\"\r\n\r\n \"dl.media.name\"\r\n
\r\n
\r\n
\r\n {{ dl.media.name | slice : 0 : 10\r\n }}= 10\">...\r\n
\r\n
\r\n
\r\n \"Image\"\r\n \"Video\"\r\n \"Document\"\r\n \"Audio\"\r\n
\r\n
\r\n {{ label.label }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","export class ContactModel {\r\n public emailsContactForm: string;\r\n public longitude: number;\r\n public latitude: number;\r\n public positionName: string;\r\n public longitude2: number;\r\n public latitude2: number;\r\n public positionName2: string;\r\n public newBusinessEnquires: boolean;\r\n public title: string;\r\n public subtitle: string;\r\n public person1Name: string;\r\n public telephone: string;\r\n public telephone2: string;\r\n public email1: string;\r\n public email2: string;\r\n public person1Position: string;\r\n public person1Email: string;\r\n public person2Name: string;\r\n public person2Position;\r\n public person2Email: string;\r\n public emailModel: EmailModel;\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n public newBusinessEnquiresTitle: string;\r\n\r\n constructor(){\r\n this.emailModel = new EmailModel();\r\n }\r\n\r\n}\r\n\r\nexport class EmailModel{\r\n public firstName: string;\r\n public lastName: string;\r\n public email: string;\r\n public telephone: string;\r\n public company: string;\r\n public message: string;\r\n}\r\n","import { SafeHtml } from \"@angular/platform-browser\";\r\n\r\nexport class WebNewsListModel {\r\n public newsGridType: string;\r\n public maxNewsPerPage: number;\r\n public news: WebNewsModel[];\r\n public stories: WebNewsModel[];\r\n public mustRegisterToAccess: boolean;\r\n public mustRegisterToDownload: boolean;\r\n public socialSharing: string[];\r\n public totalCount: number;\r\n public logoUrl: string;\r\n public hideCounter: boolean;\r\n}\r\n\r\nexport class WebNewsModel {\r\n public storyId: number;\r\n public staggingStoryId: number;\r\n public audio: number;\r\n public video: number;\r\n public images: number;\r\n public document: number;\r\n public publishedDate: string;\r\n public category: string[];\r\n public storyTitle: string;\r\n public shortDescription: string;\r\n public thumbUrl: string;\r\n public fullHDUrl?: string;\r\n public featuredEmbeddedCode: string;\r\n public embeddedCode: SafeHtml;\r\n public views: number;\r\n public shared: number;\r\n public hideStoryDate: boolean;\r\n\r\n //added new properties\r\n public shareDropdown: boolean;\r\n public categoryDropdown: boolean;\r\n public subCategory: boolean;\r\n}\r\n\r\nexport class WebNewsDetailsModel {\r\n public smallHeroImage: boolean;\r\n public youMayAlsoLikeSection: boolean;\r\n public storyId: number;\r\n public audio: number;\r\n public video: number;\r\n public images: number;\r\n public document: number;\r\n public publishedDate: string;\r\n public socialSharing: string[];\r\n public featuredMediaType: string;\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n public anonymousShare: boolean;\r\n public category: WebNewsDetailsCategoryModel[];\r\n public storyTitle: string;\r\n public shortDescription: string;\r\n public text: string;\r\n public thumbUrl: string;\r\n public featuredEmbeddedCode: string;\r\n public embeddedCode: SafeHtml;\r\n public views: number;\r\n public shared: number;\r\n public media: WebNewsDetailsMediaModel[];\r\n public alsoMayLike: WebNewsModel[];\r\n public isMobileCrop: boolean;\r\n public hideCounters: boolean;\r\n public hideStoryDate: boolean;\r\n //added new properties\r\n public sharedDropdown: boolean;\r\n public categoryDropdown: boolean;\r\n public staggingStoryId?: number;\r\n public mediaId: number;\r\n}\r\n\r\nexport class WebNewsDetailsCategoryModel {\r\n public id: number;\r\n public name: string;\r\n public isCustom: boolean;\r\n}\r\n\r\nexport class WebNewsDetailsMediaModel {\r\n public id: number;\r\n public staggingStoryId: number;\r\n public thumbUrl: string;\r\n public fullHDUrl?: string;\r\n public name: string;\r\n public downloadLink: string;\r\n public mediaType: string;\r\n public views: number;\r\n public downloads: number;\r\n public lastDownloads: string[];\r\n public shareUrl: any;\r\n public mediaLenght: number;\r\n public isPublished: boolean;\r\n public relativeShareUrl: string;\r\n\r\n //added new properties\r\n public checked = false;\r\n public addedToCart: boolean;\r\n public mediaDropdown: boolean;\r\n public shares?: number;\r\n\r\n public mediaLengthMin: number;\r\n public mediaLengthSec: number;\r\n}\r\n\r\nexport class NewsViewModel {\r\n public newsId: number;\r\n public userId: number;\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {McService} from '../../shared/services/mc-service';\r\nimport {Router, ActivatedRoute} from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-redirect-old',\r\n template: ''\r\n})\r\nexport class RedirectOldComponent implements OnInit {\r\n\r\n id: number;\r\n type: string;\r\n url: string;\r\n\r\n constructor(private router: Router, private route: ActivatedRoute){\r\n this.route.params.subscribe();\r\n }\r\n\r\n // https://digitalnewsagency.com/media/254056/share\r\n // {path: 'media/:id/share', component: RedirectOldComponent},\r\n\r\n // https://digitalnewsagency.com//users/49390/reset_password/f30373a60686b05d10b2c594d973666f4bf9f740\r\n // {path: 'users/:id/reset_password/:hash', component: RedirectOldComponent},\r\n\r\n ngOnInit() {\r\n this.url = 'http://dna3.digitalnewsagency.com/';\r\n this.type = this.route.snapshot.url[0].toString();\r\n\r\n for (let a of this.route.snapshot.url) {\r\n this.url += a + '/';\r\n }\r\n\r\n //\r\n\r\n document.location.href = this.url;\r\n\r\n // //\r\n\r\n // if (this.type == 'users') {\r\n // document.location.href = this.url;\r\n // }\r\n // else {\r\n\r\n // this.id = parseInt(this.route.snapshot.paramMap.get('id'));\r\n\r\n // //\r\n // //\r\n\r\n\r\n // this.router.navigate(['/story/' + this.id + '/title']);\r\n // }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PasswordCheckService {\r\n\r\n constructor() { }\r\n\r\n hasPasswordHardening() {\r\n return localStorage.getItem('hasPasswordHardening') === 'true';\r\n }\r\n\r\n passwordCheckSpecial(password) {\r\n if (!password) return false;\r\n const pecialCharacters = \"!\\\"#$%&'()*+,-./:;<=>?@[\\\\]^_`{|}~\";\r\n for (let i = 0; i < password.length; i++) {\r\n if (pecialCharacters.indexOf(password[i]) > -1) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n passwordCheckCase(password) {\r\n if (!password) return false;\r\n const upperCase = /[A-Z]/;\r\n const lowerCase = /[a-z]/;\r\n if (upperCase.test(password) && lowerCase.test(password)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n passwordCheckLength(password) {\r\n if (!password) return false;\r\n if (password.length >= 8) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n passwordCheckNumber(password) {\r\n if (!password) return false;\r\n const numbers = /[0-9]/;\r\n if (numbers.test(password)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n checkAll(password) {\r\n return this.passwordCheckSpecial(password)\r\n && this.passwordCheckCase(password)\r\n && this.passwordCheckLength(password)\r\n && this.passwordCheckNumber(password);\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Router } from \"@angular/router\";\r\nimport { PageStyle } from '../../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../services/fonts-and-colors.service';\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { LanguageService } from \"../../services/language.service\";\r\n\r\n@Component({\r\n selector: 'app-register-popup',\r\n templateUrl: './register-popup.component.html',\r\n styleUrls: ['./register-popup.component.less']\r\n})\r\nexport class RegisterPopupComponent implements OnInit {\r\n @Input() registerPopup: boolean;\r\n styles = new PageStyle();\r\n language: Language;\r\n\r\n @Output() registerPopupClose = new EventEmitter();\r\n constructor(private router: Router, public fontsAndColorsService: FontsAndColorsService, private languageService: LanguageService,\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n close() {\r\n this.registerPopupClose.emit(false);\r\n this.router.navigateByUrl('/sign-in', { replaceUrl: true });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ language.registrationSuccess }}\r\n
\r\n\r\n
\r\n Hi,

\r\n Thank you for completing the sign-up process.\r\n

\r\n {{ language.activationEmailSent }}\r\n

\r\n {{ language.activationEmailInstructions }}\r\n

\r\n {{ language.lookForwardMessage }}\r\n

\r\n {{ language.thankYou }},
\r\n DNA Team\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnInit } from \"@angular/core\";\r\nimport { WebNewsDetailsMediaModel } from \"../../news/news-model\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-media-group\",\r\n templateUrl: \"./media-group.component.html\",\r\n styleUrls: [\"./media-group.component.less\"],\r\n})\r\nexport class MediaGroupComponent implements OnInit {\r\n @Input() group: WebNewsDetailsMediaModel[];\r\n @Input() config: any;\r\n @Input() mirrored: boolean;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {}\r\n}\r\n","
\r\n
\r\n 0\" [media]=\"group[0]\" [config]=\"config\" [full]=\"true\"\r\n [customClasses]=\"'two-thirds'\">\r\n 3\" [media]=\"group[3]\" [config]=\"config\" [full]=\"true\"\r\n [customClasses]=\"'one-third'\">\r\n
\r\n
\r\n 1\" [media]=\"group[1]\" [config]=\"config\" [full]=\"true\"\r\n [customClasses]=\"'one-half'\">\r\n 2\" [media]=\"group[2]\" [config]=\"config\" [full]=\"true\"\r\n [customClasses]=\"'one-half'\">\r\n
\r\n
","import { Component, HostListener, NgZone, OnInit } from \"@angular/core\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { WebNewsListModel, WebNewsModel } from \"../news/news-model\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-news\",\r\n templateUrl: \"./brand-stories.component.html\",\r\n styleUrls: [\"./brand-stories.component.less\"],\r\n})\r\nexport class BrandStoriesComponent implements OnInit {\r\n news: any[];\r\n grid: string;\r\n dropdown = false;\r\n loader: boolean;\r\n subcategory = false;\r\n styles = new PageStyle();\r\n user: any;\r\n showPagination = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n newsHeadlineLength = 10;\r\n webListResponse = new WebNewsListModel();\r\n p = 1;\r\n itemsPerPage: number;\r\n shortDescriptionLength: number;\r\n language: Language;\r\n sLng: number;\r\n clientName: string;\r\n storyGroups: WebNewsModel[][] = [[]];\r\n\r\n constructor(\r\n private router: Router,\r\n private mcService: McService,\r\n private languageService: LanguageService,\r\n ngZone: NgZone,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private activatedRoute: ActivatedRoute\r\n ) {\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n this.clientName = params[\"brand\"];\r\n });\r\n\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n window.onresize = (e) => {\r\n ngZone.run(() => {\r\n if (window.innerWidth <= 1100 && window.innerWidth >= 800) {\r\n this.grid = \"Columns3\";\r\n } else if (window.innerWidth <= 800) {\r\n this.grid = \"Columns2\";\r\n } else {\r\n this.grid = this.webListResponse.newsGridType;\r\n }\r\n // //\r\n });\r\n };\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.resize();\r\n }\r\n ngOnInit() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.currentUrl = window.location.href;\r\n this.loader = true;\r\n window.scrollTo(0, 0);\r\n this.user = TokenManagerService.getUser();\r\n this.getBrandStories(this.p);\r\n // this.getStyle();\r\n }\r\n\r\n changeColorr(e) {\r\n e.target.style.background = this.styles.style.mainButton3HoverColor;\r\n }\r\n\r\n changeColor(e) {\r\n e.target.style.background = this.styles.style.mainButton3DefaultColor;\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.replace(\"News\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webListResponse.news.find((x) => x.staggingStoryId == storyId)\r\n .storyTitle\r\n )\r\n );\r\n }\r\n\r\n getStyle() {\r\n this.mcService.getStyle().subscribe(\r\n (response: any) => {\r\n //\r\n this.styles = response;\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getBrandStories(page) {\r\n this.loader = true;\r\n if (this.sLng == 0) {\r\n this.sLng = 1;\r\n }\r\n this.mcService.getBrandStories(this.clientName, page, this.sLng).subscribe(\r\n (response: any) => {\r\n this.webListResponse = response;\r\n if (this.webListResponse.socialSharing != null) {\r\n this.socials = this.webListResponse.socialSharing;\r\n }\r\n this.groupStories();\r\n this.resize();\r\n\r\n this.itemsPerPage = this.webListResponse.maxNewsPerPage;\r\n this.loader = false;\r\n\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n if (element[0]) {\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n }\r\n });\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n groupStories() {\r\n let count = 0;\r\n this.storyGroups = [[]];\r\n for (const story of this.webListResponse.news) {\r\n if (this.storyGroups[count].length >= 4) count++;\r\n if (!this.storyGroups[count]) this.storyGroups[count] = [];\r\n this.storyGroups[count].push(story);\r\n }\r\n }\r\n\r\n resize() {\r\n if (this.webListResponse.newsGridType === \"Columns2\") {\r\n this.newsHeadlineLength = 155;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 120;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n }\r\n if (this.webListResponse.newsGridType === \"Columns3\") {\r\n this.newsHeadlineLength = 90;\r\n this.shortDescriptionLength = 140;\r\n\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 120;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 75;\r\n this.shortDescriptionLength = 75;\r\n }\r\n }\r\n if (this.webListResponse.newsGridType === \"Columns4\") {\r\n this.newsHeadlineLength = 60;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 15;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 100;\r\n }\r\n }\r\n }\r\n\r\n setColor(e?) {\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n if (element[0]) {\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n }\r\n }, 100);\r\n }\r\n\r\n showSubCategory(news) {\r\n news.subCategory = !news.subCategory;\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.webListResponse.news) {\r\n if (x.storyId === id) {\r\n x.shareDropdown = !x.shareDropdown;\r\n }\r\n }\r\n }\r\n\r\n readMore(id) {\r\n localStorage.setItem(\"storyId\", JSON.stringify(id));\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n // this.mcService.addViewToNews(id.storyId, this.user.id)\r\n // .subscribe((response) => {\r\n //\r\n // },\r\n // (error2 => {\r\n // //\r\n // }));\r\n }\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webListResponse.news.find(\r\n (x) => x.staggingStoryId == id.staggingStoryId\r\n ).storyTitle\r\n ),\r\n ]);\r\n }\r\n\r\n twoGrid() {\r\n if (\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 3) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 4)\r\n ) {\r\n this.grid = \"Columns2\";\r\n this.itemsPerPage = 2;\r\n }\r\n if (\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 6) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 8)\r\n ) {\r\n this.grid = \"Columns2\";\r\n this.itemsPerPage = 4;\r\n }\r\n if (\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 9) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 12)\r\n ) {\r\n this.grid = \"Columns2\";\r\n this.itemsPerPage = 6;\r\n }\r\n if (\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 12) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 3)\r\n ) {\r\n this.grid = \"Columns2\";\r\n this.itemsPerPage = 8;\r\n }\r\n this.setColor();\r\n this.newsHeadlineLength = 155;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 120;\r\n }\r\n }\r\n\r\n threeGrid() {\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 2) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 4)\r\n ) {\r\n this.grid = \"Columns3\";\r\n this.itemsPerPage = 3;\r\n }\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 4) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 8)\r\n ) {\r\n this.grid = \"Columns3\";\r\n this.itemsPerPage = 6;\r\n }\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 6) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 12)\r\n ) {\r\n this.grid = \"Columns3\";\r\n this.itemsPerPage = 9;\r\n }\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 8) ||\r\n (this.grid === \"Columns4\" && this.itemsPerPage === 16)\r\n ) {\r\n this.grid = \"Columns3\";\r\n this.itemsPerPage = 12;\r\n }\r\n this.setColor();\r\n this.newsHeadlineLength = 90;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 12;\r\n }\r\n }\r\n\r\n fourGrid() {\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 2) ||\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 3)\r\n ) {\r\n this.grid = \"Columns4\";\r\n this.itemsPerPage = 4;\r\n }\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 4) ||\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 6)\r\n ) {\r\n this.grid = \"Columns4\";\r\n this.itemsPerPage = 8;\r\n }\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 6) ||\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 9)\r\n ) {\r\n this.grid = \"Columns4\";\r\n this.itemsPerPage = 12;\r\n }\r\n if (\r\n (this.grid === \"Columns2\" && this.itemsPerPage === 8) ||\r\n (this.grid === \"Columns3\" && this.itemsPerPage === 12)\r\n ) {\r\n this.grid = \"Columns4\";\r\n this.itemsPerPage = 16;\r\n }\r\n this.setColor();\r\n this.newsHeadlineLength = 60;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 42;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 42;\r\n }\r\n }\r\n\r\n changePage(page) {\r\n this.p = page;\r\n this.getBrandStories(this.p);\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n

{{ clientName }}

\r\n

\r\n \r\n

\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n","export class LoginModel {\r\n public email: string;\r\n public password: string;\r\n}\r\n\r\nexport class UserModel {\r\n public id: number;\r\n public fullName: string;\r\n public role: string;\r\n public isPasswordSet: boolean;\r\n public cmsUser: CmsModel;\r\n}\r\n\r\nexport class CmsModel{\r\n public id: number;\r\n public fullName: string;\r\n public role: string;\r\n public imageUrl: string;\r\n}\r\n\r\nexport class EmailModel{\r\n public email: string;\r\n}\r\n\r\n\r\nexport class NewPasswordModel {\r\n public resetCode: string;\r\n public newPassword: string;\r\n public confirmPassword: string;\r\n}\r\n\r\nexport class UserAuthModel{\r\n public code: string;\r\n}\r\n\r\nexport class fbModel {\r\n public firstName: string;\r\n public lastName: string;\r\n public email: string;\r\n public facebookId:string;\r\n constructor(){\r\n this.email='';\r\n this.facebookId='';\r\n this.firstName='';\r\n this.lastName='';\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { LoginAttempts } from '../../models/login-attempts/login-attempts-model';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoginAttemptsService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n\r\n getLoginAttempts(userId: number, data): Observable {\r\n const url = environment.apiUrl + '/CmsLoginAttempts/List?cmsUserId=' + userId + '&page=' + data.page + '&pageSize=' + data.pageSize;\r\n return this.http.get(url);\r\n }\r\n\r\n getLoginAttempt(id: number): Observable {\r\n const url = environment.apiUrl + '/UserLoginAttempts/get?id=' + id;\r\n return this.http.get(url);\r\n }\r\n\r\n createLoginAttempts(loginAttempts: LoginAttempts): Observable {\r\n const url = environment.apiUrl + '/UserLoginAttempts/add';\r\n return this.http.post(url, loginAttempts);\r\n }\r\n\r\n deleteLoginAttempts(id: number): Observable {\r\n const url = environment.apiUrl + '/UserLoginAttempts/delete?id=' + id;\r\n return this.http.delete(url);\r\n }\r\n\r\n updateLoginAttempts(loginAttempts: LoginAttempts): Observable {\r\n const url = environment.apiUrl + '/UserLoginAttempts/update';\r\n return this.http.post(url, loginAttempts);\r\n }\r\n\r\n\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostListener,\r\n NgZone,\r\n OnInit,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { NewsModel } from \"../../models/news/news.model\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport {\r\n FeaturedStoriesModel,\r\n HomeModel,\r\n LatestMediaModel,\r\n LatestStoriesModel,\r\n} from \"./home-model\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Meta } from \"@angular/platform-browser\";\r\nimport { Title } from \"@angular/platform-browser\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Location } from \"@angular/common\";\r\n\r\ndeclare var $: any;\r\n\r\nimport { MetaModel } from \"../../models/meta/meta\";\r\nimport { FacebookService } from \"ngx-facebook\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { CommunicationService } from \"../../shared/services/communication.service\";\r\nimport { MCLanguageService } from \"../../shared/services/mc-language.service\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { WebpHelperService } from \"../../shared/services/webp-helper.service\";\r\nimport { BrandsManageModel } from \"../brands/brands-model\";\r\n\r\n@Component({\r\n selector: \"app-homepage-2\",\r\n templateUrl: \"./homepage-2.component.html\",\r\n styleUrls: [\"./homepage-2.component.less\"],\r\n})\r\nexport class HomepageComponent2 implements OnInit {\r\n news: NewsModel[];\r\n picture: SafeHtml;\r\n visibleNews: NewsModel[];\r\n searchText = \"\";\r\n dropdown = false;\r\n grid: string;\r\n latestCategoryGrid: string;\r\n activeSubTab: number;\r\n filtered: LatestMediaModel[] = [];\r\n category: string;\r\n mediaId: number;\r\n popup = false;\r\n p = 1;\r\n subcategory = false;\r\n twitterActive: boolean;\r\n facebookActive: boolean;\r\n instagramActive: boolean;\r\n linkedinActive: boolean;\r\n loader: boolean;\r\n image: string;\r\n audio: number;\r\n video: number;\r\n document: number;\r\n images: number;\r\n twitter: any[];\r\n facebook: any[];\r\n linkedin: any;\r\n homeModelResponse = new HomeModel();\r\n storyGroupings: LatestStoriesModel[][] = [[]];\r\n items: Array = [];\r\n backgroundUrl = \"\";\r\n videoUrl = \"\";\r\n thumbUrl = \"\";\r\n autoplay: boolean;\r\n selectedFs: any = {};\r\n activeSlide: number = 0;\r\n all = true;\r\n imageTab = false;\r\n videoTab = false;\r\n documentTab = false;\r\n audioTab = false;\r\n styles = new PageStyle();\r\n showVideos = false;\r\n showImages = false;\r\n showAudios = false;\r\n showDocuments = false;\r\n countAll = 0;\r\n countVideos = 0;\r\n countImages = 0;\r\n countAudios = 0;\r\n countDocuments = 0;\r\n user: any;\r\n activeAllTab = false;\r\n activeTab = false;\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n activeAll: boolean = true;\r\n activeImage: boolean = false;\r\n activeVideo: boolean = false;\r\n activeDoc: boolean = false;\r\n activeAudio: boolean = false;\r\n fStories: FeaturedStoriesModel[];\r\n nextFStories: FeaturedStoriesModel[] = [];\r\n filterDropdown: boolean;\r\n metadatas: MetaModel;\r\n newsHeadlineLength: number;\r\n newsGridResponse: HomeModel;\r\n shortDescriptionLength: number;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n mcLanguage = [];\r\n sLng: number;\r\n loading = false;\r\n xDown = null;\r\n yDown = null;\r\n featuredEmbeddedCode: SafeHtml;\r\n buttonsHelper = ButtonsHelper;\r\n mediaLoaded = false;\r\n initialLoaded = false;\r\n latestStoriesLoaded = false;\r\n storiesCategoryLoaded = false;\r\n showCategory = true;\r\n brands: BrandsManageModel[] = [];\r\n brandsCurrentScroll: number = 0;\r\n brandsMaxScroll: number = 0;\r\n innerWidth: number = 0;\r\n @ViewChild(\"brandsContainer\")\r\n brandsContainer: ElementRef;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private ngZone: NgZone,\r\n private sService: StorageService,\r\n private meta: Meta,\r\n private titleService: Title,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private languageService: LanguageService,\r\n private mcLanguageService: MCLanguageService,\r\n private fbo: FacebookService,\r\n private route: ActivatedRoute,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private location: Location,\r\n private communicationService: CommunicationService,\r\n private sanitizer: DomSanitizer,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n this.mcLanguageService.language.subscribe((language) => {\r\n this.getHomeTexts(language);\r\n });\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n if (media) {\r\n this.openPopup(+media);\r\n }\r\n });\r\n this.route.queryParams.subscribe((params) => {\r\n if (params[\"parentBrandUrl\"]) {\r\n this.communicationService.setFromBrands(decodeURI(params[\"parentBrandUrl\"]));\r\n }\r\n });\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.resize();\r\n }\r\n\r\n getHomeTexts(mcLanguage) {\r\n if (mcLanguage) {\r\n let homeKeywords = [\r\n \"SearchBoxTitle\",\r\n \"SearchBoxText\",\r\n \"SearchBoxSubtitle\",\r\n ];\r\n let homeKeywordIds = [];\r\n let homeIdToKeyword = [];\r\n for (const keyword of mcLanguage.keywords) {\r\n if (homeKeywords.includes(keyword.label)) {\r\n homeKeywordIds.push(keyword.id);\r\n homeIdToKeyword[keyword.id] = keyword.label;\r\n }\r\n }\r\n let lngId = localStorage.getItem(\"lng\");\r\n for (const mccl of mcLanguage.mediaCenterChosenLanguages) {\r\n if (\r\n homeKeywordIds.includes(mccl.keywordId) &&\r\n mccl.languageId == lngId\r\n ) {\r\n this.mcLanguage[homeIdToKeyword[mccl.keywordId]] = mccl.translation;\r\n }\r\n }\r\n }\r\n }\r\n\r\n openPopup(id) {\r\n this.mediaId = id;\r\n this.popup = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.showCategory = localStorage.getItem(\"hideCategories\") != \"1\";\r\n this.language = this.languageService.getLanguage();\r\n this.getHomeTexts(this.mcLanguageService.getMCLanguage());\r\n document.addEventListener(\r\n \"touchstart\",\r\n (evt) => {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n },\r\n false\r\n );\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n window.scrollTo(0, 0);\r\n\r\n this.getHomepage();\r\n this.user = TokenManagerService.getUser();\r\n this.currentUrl = window.location.href;\r\n\r\n this.facebook = [];\r\n this.getBrands();\r\n }\r\n\r\n getBrands() {\r\n this.mcService.getBrands().subscribe(\r\n (response: any) => {\r\n this.brands = response.clients;\r\n setTimeout(() => {\r\n this.brandsMaxScroll = this.brandsContainer?.nativeElement?.offsetWidth;\r\n }, 1000);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n handleTouchStart(evt) {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n }\r\n\r\n resize() {\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns2\") {\r\n this.newsHeadlineLength = 155;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 120;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns3\") {\r\n this.newsHeadlineLength = 90;\r\n this.shortDescriptionLength = 140;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 120;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 75;\r\n this.shortDescriptionLength = 75;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns4\") {\r\n this.newsHeadlineLength = 60;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 15;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 100;\r\n }\r\n }\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n getStoryUrl(storyId, stories) {\r\n return (\r\n this.currentUrl.replace(\"home\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n stories.find((x) => x.staggingStoryId == storyId).storyTitle\r\n )\r\n );\r\n }\r\n\r\n homepageLoaded() {\r\n if (this.latestStoriesLoaded && this.initialLoaded) {\r\n this.resize();\r\n this.loader = false;\r\n }\r\n }\r\n\r\n getHomepage() {\r\n this.loader = true;\r\n this.mcService.getHomepageInitial(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Initial Load\");\r\n this.initialLoaded = true;\r\n this.homeModelResponse.featuredStories = response.featuredStories;\r\n this.homeModelResponse.mustRegisterToAccess =\r\n response.mustRegisterToAccess;\r\n this.homeModelResponse.mustRegisterToDownload =\r\n response.mustRegisterToDownload;\r\n this.homeModelResponse.hideCounters = response.hideCounters;\r\n this.homeModelResponse.latesStoryGridType = response.latesStoryGridType;\r\n this.grid = this.homeModelResponse.latesStoryGridType;\r\n this.homeModelResponse.title = response.title;\r\n this.homeModelResponse.bodyText = response.bodyText;\r\n this.homeModelResponse.additionalBodyText = response.additionalBodyText;\r\n this.homeModelResponse.socialSharing = response.socialSharing;\r\n\r\n this.fStories = response.featuredStories;\r\n this.selectedFs = this.homeModelResponse.featuredStories[0];\r\n for (let i = 1; i < this.fStories.length && i < 3; i++) {\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n for (const x of this.homeModelResponse.featuredStories) {\r\n this.images = x.images;\r\n this.video = x.video;\r\n this.audio = x.audio;\r\n this.document = x.document;\r\n }\r\n this.backgroundUrl =\r\n this.homeModelResponse?.featuredStories[0]?.fullHDUrl || \"\";\r\n\r\n for (const x of this.fStories) {\r\n if (x.fullHDUrl === \"\") {\r\n this.thumbUrl = x.thumbUrl;\r\n }\r\n }\r\n\r\n for (const featuredStory of this.homeModelResponse.featuredStories) {\r\n if (featuredStory.featuredEmbeddedCode) {\r\n featuredStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n featuredStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (this.homeModelResponse.socialSharing != null) {\r\n this.socials = this.homeModelResponse.socialSharing;\r\n }\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n this.mcService.getHomepageLatestStories(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Latest Stories\");\r\n this.latestStoriesLoaded = true;\r\n this.homeModelResponse.latestStories = response.latestStories;\r\n for (const latestStory of this.homeModelResponse.latestStories) {\r\n if (latestStory.featuredEmbeddedCode) {\r\n latestStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n latestStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.loadStoryGroupings();\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n loadStoryGroupings() {\r\n let count = 0;\r\n for (const story of this.homeModelResponse.latestStories) {\r\n if (this.storyGroupings[count].length >= 4) count++;\r\n if (!this.storyGroupings[count]) this.storyGroupings[count] = [];\r\n this.storyGroupings[count].push(story);\r\n }\r\n }\r\n\r\n changeStory(story: FeaturedStoriesModel, i) {\r\n this.videoUrl = \"\";\r\n this.images = story.images;\r\n this.video = story.video;\r\n this.audio = story.audio;\r\n this.document = story.document;\r\n this.selectedFs = story;\r\n if (story.mediaType == \"Image\") {\r\n this.backgroundUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.mediaType == \"Video\") {\r\n this.videoUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.featuredEmbeddedCode) {\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n this.activeSlide = i;\r\n }\r\n\r\n moveLeftBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll - moveAmount;\r\n if (this.brandsCurrentScroll < 0) this.brandsCurrentScroll = 0;\r\n }\r\n\r\n moveRightBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll + moveAmount;\r\n if (this.brandsCurrentScroll > this.brandsMaxScroll - this.innerWidth)\r\n this.brandsCurrentScroll = this.brandsMaxScroll - this.innerWidth;\r\n }\r\n\r\n prevSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != 0) {\r\n this.activeSlide = this.activeSlide - 1;\r\n } else {\r\n this.activeSlide = this.fStories.length - 1;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n nextSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != this.fStories.length - 1) {\r\n this.activeSlide = this.activeSlide + 1;\r\n } else {\r\n this.activeSlide = 0;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n changeSlide() {\r\n this.selectedFs = this.fStories[this.activeSlide];\r\n this.backgroundUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n for (const x of this.fStories) {\r\n if (x.mediaType == \"Video\") {\r\n this.videoUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n }\r\n }\r\n\r\n if (this.selectedFs.featuredEmbeddedCode) {\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n this.selectedFs.featuredEmbeddedCode\r\n );\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n }\r\n this.nextFStories = [];\r\n for (let i = this.activeSlide + 1; this.nextFStories.length < 2; i++) {\r\n if (i >= this.fStories.length) i = 0;\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n }\r\n\r\n readMore(id, title) {\r\n localStorage.setItem(\"storyId\", JSON.stringify(id));\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.googleAnalytics.emitArticleEvent(\"homepage\", id.staggingStoryId);\r\n this.googleAnalytics.emitReadMoreEvent(\r\n \"slider\",\r\n title,\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title)\r\n );\r\n this.router.navigate([\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title),\r\n ]);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
1 ? 'has-child' : ''\">\r\n
\r\n {{category}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n {{ selectedFs?.storyTitle }}\r\n

\r\n

\r\n {{ selectedFs?.shortDescription }}\r\n

\r\n
\r\n
\r\n {{ language.readMore }}\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{ language.latestStory }}\r\n

\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"brands\">\r\n
\r\n

\r\n {{ language.brands }}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnInit,\r\n HostListener,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport {\r\n WebNewsDetailsMediaModel,\r\n WebNewsDetailsModel,\r\n} from \"../news/news-model\";\r\nimport { Router, ActivatedRoute, Params } from \"@angular/router\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { saveAs } from \"file-saver\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\n\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { DownloadAddToModel } from \"../media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { DomSanitizer, Meta } from \"@angular/platform-browser\";\r\nimport { MyFilesService } from \"../../shared/services/my-files.service\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { SavedStoryService } from \"../../shared/services/saved-story.service\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n ValidationErrors,\r\n Validators,\r\n} from \"@angular/forms\";\r\nimport { CustomValidators } from \"ng2-validation\";\r\nimport { HttpRequestService } from \"../../shared/services/http-request.service\";\r\nimport { ToastrConfig } from \"../../shared/helpers/toastr-config\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\n\r\ndeclare var require: any;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-competition-page\",\r\n templateUrl: \"./competition-page.component.html\",\r\n styleUrls: [\"./competition-page.component.less\"],\r\n})\r\nexport class CompetitionPageComponent implements OnInit {\r\n title: string =\r\n \"Plane Amazing! Design the easyJet Aircraft of the Future\";\r\n\r\n url: string;\r\n loader: boolean;\r\n autoplay: boolean;\r\n\r\n user: any;\r\n styles = new PageStyle();\r\n\r\n socials: string[] = [];\r\n currentUrl: string;\r\n\r\n language: Language;\r\n sLng: number;\r\n token: string;\r\n relatedStoriesTabOpened = true;\r\n mediaTabOpened = true;\r\n isMediaUser: boolean;\r\n buttonsHelper = ButtonsHelper;\r\n filters: any;\r\n imageerrorSubmission = false;\r\n valForm: FormGroup;\r\n email: any;\r\n termsAndConditions: boolean;\r\n TC: boolean;\r\n nameOfGuardian: any;\r\n categoryError: boolean = false;\r\n categoryDropdown: boolean = false;\r\n categories = [\r\n { id: 1, label: \"Primary School (7 - 11)\", checked: false },\r\n { id: 2, label: \"Secondary School (12 - 16)\", checked: false },\r\n ];\r\n\r\n submissionModel: any = {};\r\n noFile: boolean = false;\r\n submissionImage = \"\";\r\n saveLayoutUrl =\r\n environment.apiUrl + \"/CompetitionSubmissions/NewCompetitionSubmission\";\r\n tmpSubmissionFile: File[] = [];\r\n file: File[] = [];\r\n constructor(\r\n private languageService: LanguageService,\r\n private fb: FormBuilder,\r\n private toastr: ToastrService,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private httpService: HttpRequestService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n this.token = localStorage.getItem(\"Token\");\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n this.submissionModel.categoryId = 0;\r\n }\r\n\r\n selectCategory(cat, event) {\r\n const index = cat.id;\r\n cat.checked = !cat.checked;\r\n if (cat.checked) {\r\n this.submissionModel.categoryId = index;\r\n this.categories.forEach((element) => {\r\n if (element.id != index) element.checked = false;\r\n });\r\n } else {\r\n this.submissionModel.categoryId = 0;\r\n this.categories.forEach((element) => {\r\n element.checked = false;\r\n });\r\n }\r\n\r\n if (event) {\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n\r\n this.categoryError = this.submissionModel.categoryId === 0;\r\n\r\n }\r\n\r\n changeColorButtonn(e) {\r\n if (e.target.tagName == \"DIV\") {\r\n e.target.style.background = this.styles.style.mainButton2HoverColor;\r\n } else {\r\n e.target.parentElement.style.background =\r\n this.styles.style.mainButton2HoverColor;\r\n }\r\n }\r\n\r\n changeColorButton(e) {\r\n if (e.target.tagName == \"DIV\") {\r\n e.target.style.background = this.styles.style.mainButton2DefaultColor;\r\n }\r\n }\r\n\r\n checkIfEmpty() {\r\n if (this.email.value === \"\") {\r\n this.email.markAsTouched();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n this.email = new FormControl(null, [\r\n CustomValidators.email,\r\n Validators.required,\r\n ]);\r\n this.valForm = this.fb.group({\r\n firstname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n lastname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n file: [null, Validators.compose([Validators.required])],\r\n terms: [null, Validators.compose([Validators.required])],\r\n nameOfGuardian: [null, Validators.compose([Validators.required])],\r\n });\r\n }\r\n\r\n termsCheck(event) {\r\n this.submissionModel.termsAndConditions =\r\n !this.submissionModel.termsAndConditions;\r\n this.termsAndConditions = !this.termsAndConditions;\r\n if (!this.termsAndConditions) {\r\n this.valForm.controls[\"terms\"].setValidators(Validators.required);\r\n this.TC = false;\r\n } else {\r\n this.TC = true;\r\n }\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n\r\n ngOnDestroy() { }\r\n\r\n getData() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.user = TokenManagerService.getUser();\r\n\r\n if (this.user.role === \"MediaUser\") {\r\n this.isMediaUser = false;\r\n } else if (this.user.role && this.user.role !== \"MediaUser\") {\r\n this.isMediaUser = true;\r\n } else {\r\n this.isMediaUser = false;\r\n }\r\n window.scrollTo(0, 0);\r\n this.currentUrl = window.location.href;\r\n }\r\n\r\n showSubCategory(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n showSubCategoryRandom(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.categoryDropdown = false;\r\n }\r\n }\r\n\r\n changeIconColor(e) {\r\n e.target.style.color = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n removeIconHoverColor(e) {\r\n e.target.style.color = \"\";\r\n }\r\n\r\n uploadSubmissionImage(e) {\r\n if (this.tmpSubmissionFile.length > 0) {\r\n const index = this.file.indexOf(this.tmpSubmissionFile[0]);\r\n this.file.splice(index, 1);\r\n }\r\n this.tmpSubmissionFile = [];\r\n // console.log(\"tets\");\r\n // console.log(e);\r\n const eventObj: MSInputMethodContext = e;\r\n const target: HTMLInputElement = eventObj.target;\r\n const files: FileList = target.files;\r\n this.tmpSubmissionFile.push(files[0]);\r\n // console.log(files);\r\n if (files.length > 0) {\r\n this.file.push(this.tmpSubmissionFile[0]);\r\n this.imageerrorSubmission = false;\r\n }\r\n for (var i = 0; i < e.target.files.length; i++) {\r\n var file = e.target.files[i];\r\n var reader = new FileReader();\r\n // console.log(reader);\r\n reader.onloadend = () => {\r\n //console.log(\"kraj\");\r\n this.submissionImage = reader.result as string;\r\n this.submissionModel.submissionImage = file.name;\r\n this.noFile = false;\r\n\r\n setTimeout(() => {\r\n let image = document.getElementById(\r\n \"submissionImg\"\r\n ) as HTMLImageElement;\r\n });\r\n };\r\n reader.onloadstart = () => {\r\n // console.log(reader.onloadstart.length);\r\n };\r\n reader.onprogress = () => {\r\n // console.log(reader.onprogress);\r\n };\r\n reader.readAsDataURL(file);\r\n // $(\"input\").after(img);\r\n }\r\n }\r\n\r\n register() {\r\n this.loader = true;\r\n this.httpService\r\n .postMultipart(this.saveLayoutUrl, this.submissionModel, this.file, true)\r\n .subscribe(\r\n (response) => {\r\n this.loader = false;\r\n // const successMessage = \"Submission Successfull!\";\r\n // this.toastr.error(successMessage, \"Success!\", ToastrConfig.success);\r\n },\r\n (error) => {\r\n this.loader = false;\r\n console.log(error);\r\n // this.toastr.error('Some of the selected media has been removed from the story.', 'Error', ToastrConfig.error);\r\n }\r\n );\r\n }\r\n\r\n onSubmit(e) {\r\n e.stopPropagation();\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n this.email.markAsTouched();\r\n\r\n if (this.valForm.valid && this.email.valid && this.termsAndConditions && this.submissionModel.categoryId !== 0) {\r\n if (this.file)\r\n this.register(); else\r\n this.noFile = true;\r\n } else {\r\n Object.keys(this.valForm.controls).forEach((key) => {\r\n const controlErrors: ValidationErrors = this.valForm.get(key).errors;\r\n if (controlErrors != null) {\r\n Object.keys(controlErrors).forEach((keyError) => {\r\n console.log(\r\n \"Key control: \" +\r\n key +\r\n \", keyError: \" +\r\n keyError +\r\n \", err value: \",\r\n controlErrors[keyError]\r\n );\r\n });\r\n }\r\n });\r\n }\r\n this.categoryError = this.submissionModel.categoryId === 0;\r\n }\r\n\r\n openCategoryDropdown(){\r\n this.categoryDropdown = !this.categoryDropdown; \r\n this.categoryError = this.submissionModel.categoryId === 0;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ title }}\r\n

\r\n\r\n
\r\n

\r\n We’re on the lookout for talented young designers to enter our\r\n competition to design a sustainable easyJet aircraft of the future!\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

\r\n We’re calling on school children up and down the UK – like you – to\r\n join our Aircraft of the Future competition to design a passenger\r\n plane for travelling across Europe, powered by a sustainable energy\r\n source.\r\n

\r\n

\r\n We’re supporting the development of new zero-emission technologies for\r\n planes – and we want you to feel inspired to become part of the\r\n revolution of future air travel as zero-emission aircraft designers\r\n and engineers.\r\n

\r\n

\r\n Your design will be judged by a panel of world-class experts in\r\n flying, sustainability, design, and zero-emission technology:\r\n

\r\n
    \r\n
  • \r\n easyJet’s very own First Officer and zero-emission aircraft modeller\r\n for FlyZero - Debbie Thomas\r\n
  • \r\n
  • easyJet’s Director of Sustainability, Jane Ashton
  • \r\n
  • Airbus’ VP of Zero-Emission Aircraft Glenn Llewellyn
  • \r\n
  • Wright Electric CEO Jeff Engler
  • \r\n
  • \r\n World-renowned designer Frank Stephenson, known for his innovative\r\n work on designs for electric flying taxis as well as his iconic car\r\n designs for the new MINI and Fiat 500.\r\n
  • \r\n
\r\n

How to Enter

\r\n

\r\n Your entry should feature a sketch drawn on paper or a tablet complete\r\n with notes and descriptions, highlighting how your aircraft works and\r\n why you have chosen the elements of your design. Take a photo of your\r\n drawing or save your digital sketch and submit it to us using the form\r\n below.\r\n

\r\n

\r\n The winning design will illustrate originality, style, innovation, and\r\n creativity and most of all focus on how to make the plane as\r\n sustainable as possible!\r\n

\r\n

Some tips from our judges:

\r\n

\r\n Your design should consider both technical and creative elements and\r\n the reasons for including them, such as:\r\n

\r\n
    \r\n
  • What makes it environmentally friendly and sustainable
  • \r\n
  • The materials used for the plane and the cabin inside
  • \r\n
  • \r\n What will power the aircraft and what other parts will make it fly\r\n
  • \r\n
  • How it will take off and land
  • \r\n
  • Shape of the plane and aerodynamics
  • \r\n
  • \r\n How all passengers get on and off the plane quickly and comfortably\r\n
  • \r\n
  • \r\n What will make the flight time really enjoyable for passengers on\r\n board\r\n
  • \r\n
  • \r\n How many passengers will it fly and what services will be available\r\n for them\r\n
  • \r\n
  • \r\n The patterns, shapes, and colours on the outside and inside of the\r\n aircraft to make it stand out\r\n
  • \r\n
\r\n

The prizes

\r\n

\r\n The winning entry will receive a money-can’t-buy prize in the form of\r\n a trip to the easyJet Training Centre in London Gatwick for an\r\n experience in a full-flight simulator, plus return easyJet flights to\r\n anywhere on the airline’s network for the winner’s immediate family,\r\n as well as a 3-D model and rendering of their design, created and\r\n signed by Frank Stephenson.\r\n

\r\n

\r\n In addition, the winner of the 12-16-year age category will also win a\r\n behind the scenes visit to Airbus as well as a chance to feature on\r\n Frank Stephenson’s\r\n podcast\r\n to discuss their design.\r\n

\r\n

\r\n Runners up will also be in with a chance to receive a rendering of\r\n their design, created and signed by Frank Stephenson.\r\n

\r\n

The rules

\r\n
    \r\n
  • \r\n We must receive your entry for the competition before midnight\r\n (23:59 UK local time) on Sunday 31 October 2021.\r\n
  • \r\n
  • \r\n All entrants must be between the ages of 7 and 16 and should ask\r\n permission from a parent or guardian before entering.\r\n
  • \r\n
  • \r\n Please don’t post your artwork to us, we’re only accepting online\r\n entries and we’ll be unable to return any artwork sent in by post or\r\n shared with anyone at easyJet.\r\n
  • \r\n
  • \r\n When taking a photo of your artwork to send to us, please make sure\r\n you use natural lighting. Dark or unnatural light can result in\r\n distorted image colour/ appearance.\r\n
  • \r\n
  • \r\n Winners must be available to attend a full-day video and photography\r\n shoot, accompanied by a parent or Guardian at London Luton Airport\r\n on Wednesday 10th November.\r\n
  • \r\n
\r\n\r\n
\r\n
\r\n
\r\n

\r\n “We know the environment is important to all of our customers,\r\n including our younger passengers, so we are really excited to\r\n launch our Plane Amazing competition to engage younger generations\r\n in the exciting possibilities of new zero-emissions technology for\r\n air travel and inspire them to become designers and engineers of\r\n the future, who will play a vital role in the industry’s future.\r\n

\r\n

\r\n easyJet First Officer and zero-emission aircraft modeller for\r\n FlyZero - Debbie Thomas\r\n

\r\n
\r\n
\r\n\r\n

Judges:

\r\n
\r\n \"Judge\r\n

\r\n Debbie Thomas – easyJet First Officer and Zero Emission Aircraft\r\n Modeller\r\n

\r\n

\r\n Debbie Thomas is a pilot for easyJet who has significant experience\r\n working across the aviation and aerospace sectors. She is also an\r\n experienced engineer and zero-emission aircraft modeller for FlyZero\r\n who are studying the design of potential new zero-carbon emission\r\n aircraft.\r\n

\r\n
\r\n
\r\n \"Judge\r\n

\r\n Jane Ashton – Director of Sustainability, easyJet\r\n

\r\n

\r\n Jane Ashton is responsible for developing and implementing the\r\n sustainability strategy across easyJet and easyJet holidays. Jane’s\r\n goal is to drive change for sustainable travel and tourism.\r\n

\r\n
\r\n
\r\n \"Judge\r\n

\r\n Glenn Llewellyn – Vice President Zero-Emission Aircraft, Airbus\r\n

\r\n

\r\n Glenn is at the helm of a zero-emission revolution at Airbus with\r\n the mission to unite all the ingredients needed to launch the\r\n world’s first zero-emission commercial aircraft.\r\n

\r\n
\r\n
\r\n \"Judge\r\n

\r\n Frank Stephenson – Automotive Transportation Designer\r\n

\r\n

\r\n Frank Stephenson is a world-famous automotive transportation\r\n designer who is best known for his iconic car designs for MINI and\r\n Fiat 500, as well as recent innovative work designing electric\r\n flying vehicles.\r\n

\r\n
\r\n
\r\n \"Judge\r\n

Jeff Engler

\r\n

\r\n Jeff Engler is an entrepreneur and co-founder of Wright Electric, an\r\n aviation company developing electric airplanes for short regional\r\n flights. He has a BA in history from Columbia College and an MBA\r\n from Harvard Business School.\r\n

\r\n
\r\n\r\n \r\n\r\n

\r\n We’re very sorry that entries aren’t available right now. Please try\r\n again soon. We apologise for any inconvenience.\r\n

\r\n

\r\n COMPETITION IS CLOSED.\r\n

\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { SavedStoryService } from '../../../shared/services/saved-story.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { TokenManagerService } from '../../../shared/services/token-manager.service';\r\nimport { DownloadAddToModel } from '../../media/media-model';\r\nimport { McService } from '../../../shared/services/mc-service';\r\nimport { GoogleAnalyticsEventsService } from '../../../shared/services/google-analytics-events.service';\r\nimport { UrlHelper } from '../../../shared/helpers/url-helper';\r\nimport { Router } from '@angular/router';\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\n\r\n@Component({\r\n selector: 'app-article',\r\n templateUrl: './article.component.html',\r\n styleUrls: ['./article.component.less']\r\n})\r\nexport class ArticleComponent implements OnInit {\r\n\r\n @Input() story: any;\r\n @Input() mustRegisterToDownload: boolean;\r\n @Input() anonymousShare: boolean;\r\n @Input() marketName: string = \"\";\r\n\r\n language: Language;\r\n\r\n constructor(private languageService: LanguageService, private savedStoryService: SavedStoryService, private http: HttpClient, private mcService: McService, private googleAnalytics: GoogleAnalyticsEventsService, private router: Router) {\r\n this.language = this.languageService.getLanguage();\r\n }\r\n\r\n ngOnInit(): void {\r\n console.log(this.story);\r\n }\r\n\r\n toggleSavedStory(storyId) {\r\n if (this.inSavedStories(storyId))\r\n this.savedStoryService\r\n .remove(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n else\r\n this.savedStoryService\r\n .add(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n inSavedStories(storyId) {\r\n return this.savedStoryService.inSavedStories(storyId);\r\n }\r\n\r\n\r\n addDownload(downloadIds) {\r\n const user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n user.id = null;\r\n }\r\n let niz = new DownloadAddToModel();\r\n niz.storyMediaIds = downloadIds;\r\n niz.publishedMediaIds = [];\r\n niz.userId = user.id;\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n readMore(story) {\r\n window.scrollTo(0, 0);\r\n const user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n user.id = null;\r\n }\r\n if (user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"view\",\r\n \"story/\" + story.staggingStoryId,\r\n \"view\",\r\n user.id ? user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.router.navigateByUrl(\r\n `/story/${story.staggingStoryId}/${UrlHelper.getUrlTitle(\r\n story.storyTitle\r\n )}`\r\n );\r\n if (window.location.pathname === \"/\") {\r\n this.googleAnalytics.emitArticleEvent(\r\n \"homepage\",\r\n story.staggingStoryId\r\n );\r\n }\r\n this.googleAnalytics.emitReadMoreEvent(\r\n \"grid\",\r\n story.storyTitle,\r\n `/story/${story.staggingStoryId}/${UrlHelper.getUrlTitle(\r\n story.storyTitle\r\n )}`\r\n );\r\n }\r\n\r\n\r\n download(urls, downloadIds) {\r\n if (\r\n this.mustRegisterToDownload &&\r\n !this.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n this.router.navigate([\"/sign-in\"]);\r\n return;\r\n } else {\r\n let component = this;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = \"download.zip\";\r\n var user = TokenManagerService.getUser();\r\n\r\n if (urls.length > 1) {\r\n urls.forEach(function (url) {\r\n var filename = url.split(\"/\")[8];\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err;\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n\r\n if (user.cmsUser == null) {\r\n component.addDownload(downloadIds);\r\n }\r\n });\r\n }\r\n });\r\n });\r\n } else {\r\n for (const x of urls) {\r\n this.http\r\n .get(x, { responseType: \"blob\" })\r\n .toPromise()\r\n .then(\r\n (blob: Blob) => {\r\n let filename = x.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n if (user.cmsUser == null) {\r\n component.addDownload(downloadIds);\r\n }\r\n },\r\n (error) => { }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{ marketName }}
\r\n
\r\n \r\n \r\n
\r\n
\r\n

({{ story.code }}) {{ story.storyTitle }}

\r\n
\r\n \r\n \r\n
\r\n
","export class ButtonsHelper {\r\n // -20 is because clientWidth takes into account padding, 10px each side horizontally\r\n static hoverGenericButton(e, styles) {\r\n let target = e.target;\r\n if (!target.classList.contains(\"generic-button\")) {\r\n target = target.parentNode;\r\n }\r\n if (target.classList.contains(\"generic-button\")) {\r\n target.style.color = styles.style.mainIdentifyingColor;\r\n target.style[\"border-color\"] = styles.style.mainIdentifyingColor;\r\n target.style[\"border-width\"] = \"2px\";\r\n target.style[\"border-style\"] = \"solid\";\r\n target.style.background = styles.style.textButton1Color;\r\n }\r\n }\r\n static unhoverGenericButton(e, styles) {\r\n let target = e.target;\r\n if (!target.classList.contains(\"generic-button\")) {\r\n target = target.parentNode;\r\n }\r\n if (target.classList.contains(\"generic-button\")) {\r\n target.style.color = styles.style.textButton1Color;\r\n target.style[\"border-color\"] = styles.style.mainIdentifyingColor;\r\n target.style[\"border-width\"] = \"2px\";\r\n target.style[\"border-style\"] = \"solid\";\r\n target.style.background = styles.style.mainIdentifyingColor;\r\n }\r\n }\r\n static unhoverEmptyButton(e, styles) {\r\n let target = e.target;\r\n if (!target.classList.contains(\"generic-button\")) {\r\n target = target.parentNode;\r\n }\r\n if (target.classList.contains(\"generic-button\")) {\r\n target.style.color = \"#858585\";\r\n target.style[\"border-color\"] = \"#858585\";\r\n target.style[\"border-width\"] = \"2px\";\r\n target.style[\"border-style\"] = \"solid\";\r\n target.style.background = \"white\";\r\n }\r\n }\r\n}\r\n","import { Component, Input, OnInit, SimpleChanges } from '@angular/core';\r\nimport { WebpHelperService } from '../../services/webp-helper.service';\r\n@Component({\r\n selector: 'app-slider-picture',\r\n templateUrl: './slider-picture.component.html',\r\n styleUrls: ['./slider-picture.component.less']\r\n})\r\nexport class SliderPictureComponent implements OnInit {\r\n\r\n @Input() backgroundUrl: string;\r\n webPError: boolean = false;\r\n\r\n constructor(public webPHelper: WebpHelperService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n this.webPError = false;\r\n }\r\n\r\n onError() {\r\n this.webPError = true;\r\n console.log(\"Error en \" + this.backgroundUrl);\r\n }\r\n}\r\n","\r\n \r\n \r\n \"File\r\n","import { Component, NgZone, OnInit } from \"@angular/core\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { TokenManagerService } from \"../../services/token-manager.service\";\r\nimport { StorageService } from \"../../services/storage.service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { McService } from \"../../services/mc-service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { FontsAndColorsService } from \"../../services/fonts-and-colors.service\";\r\n\r\n@Component({\r\n selector: \"app-loaderrelative\",\r\n templateUrl: \"./loader.component.html\",\r\n styleUrls: [\"./loader.component.less\"],\r\n})\r\nexport class LoaderrelativeComponent implements OnInit {\r\n styles = new PageStyle();\r\n user: any;\r\n\r\n constructor(private fontsAndColorsService: FontsAndColorsService) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n }\r\n\r\n ngOnInit() {\r\n // this.getStyle();\r\n this.user = TokenManagerService.getUser();\r\n //window.scrollTo(0, 0);\r\n }\r\n\r\n setColor(e) {\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n });\r\n }\r\n\r\n // getStyle() {\r\n // this.mcService.getStyle()\r\n // .subscribe((response) => {\r\n // //\r\n // this.styles = response;\r\n //\r\n // },\r\n // (error) => {\r\n // //\r\n // });\r\n // }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","export class MyFilesModel {\r\n public storyMediaIds: number[];\r\n public publishedMediaIds: number[];\r\n constructor(storyMediaIds: number[], publishedMediaIds: number[]) {\r\n this.storyMediaIds = storyMediaIds;\r\n this.publishedMediaIds = publishedMediaIds;\r\n }\r\n\r\n public isInMyFiles(id: number, isPublished: boolean): boolean {\r\n\r\n if (isPublished) {\r\n return this.publishedMediaIds.indexOf(id) > -1;\r\n } else {\r\n return this.storyMediaIds.indexOf(id) > -1;\r\n }\r\n\r\n }\r\n\r\n get length(): number {\r\n return this.storyMediaIds.length + this.publishedMediaIds.length;\r\n }\r\n}","import { WebManageMediaModel } from '../../download/download-model';\r\n\r\nexport class MediaModel {\r\n public mediaPageGridType: string;\r\n public maxMediaPerPage: number;\r\n public images: number;\r\n public mustRegisterToDownload: boolean;\r\n public socialSharing: string[];\r\n public mustRegisterToAccess: boolean;\r\n public anonymousShare: boolean;\r\n public video: number;\r\n public document: number;\r\n public audio: number;\r\n public media: WebManageMediaModel[];\r\n public totalCount: number;\r\n public hideCounters: boolean;\r\n}\r\n\r\nexport class DownloadAddToModel {\r\n public storyMediaIds: number[];\r\n public publishedMediaIds: number[];\r\n public userId: number;\r\n}\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostListener,\r\n NgZone,\r\n OnInit,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { NewsModel } from \"../../models/news/news.model\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport {\r\n FeaturedStoriesModel,\r\n HomeModel,\r\n LatestMediaModel,\r\n LatestStoriesModel,\r\n} from \"./home-model\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Meta } from \"@angular/platform-browser\";\r\nimport { Title } from \"@angular/platform-browser\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Location } from \"@angular/common\";\r\n\r\ndeclare var $: any;\r\n\r\nimport { MetaModel } from \"../../models/meta/meta\";\r\nimport { FacebookService } from \"ngx-facebook\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { CommunicationService } from \"../../shared/services/communication.service\";\r\nimport { MCLanguageService } from \"../../shared/services/mc-language.service\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { WebpHelperService } from \"../../shared/services/webp-helper.service\";\r\nimport { BrandsManageModel } from \"../brands/brands-model\";\r\n\r\n@Component({\r\n selector: \"app-homepage\",\r\n templateUrl: \"./homepage.component.html\",\r\n styleUrls: [\"./homepage.component.less\"],\r\n})\r\nexport class HomepageComponent implements OnInit {\r\n news: NewsModel[];\r\n picture: SafeHtml;\r\n visibleNews: NewsModel[];\r\n searchText = \"\";\r\n dropdown = false;\r\n grid: string;\r\n latestCategoryGrid: string;\r\n activeSubTab: number;\r\n filtered: LatestMediaModel[] = [];\r\n category: string;\r\n mediaId: number;\r\n popup = false;\r\n p = 1;\r\n subcategory = false;\r\n twitterActive: boolean;\r\n facebookActive: boolean;\r\n instagramActive: boolean;\r\n linkedinActive: boolean;\r\n loader: boolean;\r\n image: string;\r\n audio: number;\r\n video: number;\r\n document: number;\r\n images: number;\r\n twitter: any[];\r\n facebook: any[];\r\n linkedin: any;\r\n homeModelResponse = new HomeModel();\r\n storyGroupings: LatestStoriesModel[][] = [[]];\r\n items: Array = [];\r\n backgroundUrl = \"\";\r\n videoUrl = \"\";\r\n thumbUrl = \"\";\r\n autoplay: boolean;\r\n selectedFs: any = {};\r\n activeSlide: number = 0;\r\n all = true;\r\n imageTab = false;\r\n videoTab = false;\r\n documentTab = false;\r\n audioTab = false;\r\n styles = new PageStyle();\r\n showVideos = false;\r\n showImages = false;\r\n showAudios = false;\r\n showDocuments = false;\r\n countAll = 0;\r\n countVideos = 0;\r\n countImages = 0;\r\n countAudios = 0;\r\n countDocuments = 0;\r\n user: any;\r\n activeAllTab = false;\r\n activeTab = false;\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n activeAll: boolean = true;\r\n activeImage: boolean = false;\r\n activeVideo: boolean = false;\r\n activeDoc: boolean = false;\r\n activeAudio: boolean = false;\r\n fStories: FeaturedStoriesModel[];\r\n nextFStories: FeaturedStoriesModel[] = [];\r\n filterDropdown: boolean;\r\n metadatas: MetaModel;\r\n newsHeadlineLength: number;\r\n newsGridResponse: HomeModel;\r\n shortDescriptionLength: number;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n mcLanguage = [];\r\n sLng: number;\r\n loading = false;\r\n xDown = null;\r\n yDown = null;\r\n featuredEmbeddedCode: SafeHtml;\r\n buttonsHelper = ButtonsHelper;\r\n mediaLoaded = false;\r\n initialLoaded = false;\r\n latestStoriesLoaded = false;\r\n storiesCategoryLoaded = false;\r\n showCategory = true;\r\n brands: BrandsManageModel[] = [];\r\n brandsCurrentScroll: number = 0;\r\n brandsMaxScroll: number = 0;\r\n innerWidth: number = 0;\r\n @ViewChild(\"brandsContainer\")\r\n brandsContainer: ElementRef;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private ngZone: NgZone,\r\n private sService: StorageService,\r\n private meta: Meta,\r\n private titleService: Title,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private languageService: LanguageService,\r\n private mcLanguageService: MCLanguageService,\r\n private fbo: FacebookService,\r\n private route: ActivatedRoute,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private location: Location,\r\n private communicationService: CommunicationService,\r\n private sanitizer: DomSanitizer,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n this.mcLanguageService.language.subscribe((language) => {\r\n this.getHomeTexts(language);\r\n });\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n if (media) {\r\n this.openPopup(+media);\r\n }\r\n });\r\n this.route.queryParams.subscribe((params) => {\r\n if (params[\"parentBrandUrl\"]) {\r\n this.communicationService.setFromBrands(decodeURI(params[\"parentBrandUrl\"]));\r\n }\r\n });\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.resize();\r\n }\r\n\r\n getHomeTexts(mcLanguage) {\r\n if (mcLanguage) {\r\n let homeKeywords = [\r\n \"SearchBoxTitle\",\r\n \"SearchBoxText\",\r\n \"SearchBoxSubtitle\",\r\n ];\r\n let homeKeywordIds = [];\r\n let homeIdToKeyword = [];\r\n for (const keyword of mcLanguage.keywords) {\r\n if (homeKeywords.includes(keyword.label)) {\r\n homeKeywordIds.push(keyword.id);\r\n homeIdToKeyword[keyword.id] = keyword.label;\r\n }\r\n }\r\n let lngId = localStorage.getItem(\"lng\");\r\n for (const mccl of mcLanguage.mediaCenterChosenLanguages) {\r\n if (\r\n homeKeywordIds.includes(mccl.keywordId) &&\r\n mccl.languageId == lngId\r\n ) {\r\n this.mcLanguage[homeIdToKeyword[mccl.keywordId]] = mccl.translation;\r\n }\r\n }\r\n }\r\n }\r\n\r\n openPopup(id) {\r\n this.mediaId = id;\r\n this.popup = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.showCategory = localStorage.getItem(\"hideCategories\") != \"1\";\r\n this.language = this.languageService.getLanguage();\r\n this.getHomeTexts(this.mcLanguageService.getMCLanguage());\r\n document.addEventListener(\r\n \"touchstart\",\r\n (evt) => {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n },\r\n false\r\n );\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n window.scrollTo(0, 0);\r\n\r\n this.getHomepage();\r\n this.user = TokenManagerService.getUser();\r\n this.currentUrl = window.location.href;\r\n\r\n this.facebook = [];\r\n this.getBrands();\r\n }\r\n\r\n getBrands() {\r\n this.mcService.getBrands().subscribe(\r\n (response: any) => {\r\n this.brands = response.clients;\r\n setTimeout(() => {\r\n this.brandsMaxScroll = this.brandsContainer?.nativeElement?.offsetWidth;\r\n }, 1000);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n handleTouchStart(evt) {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n }\r\n\r\n resize() {\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns2\") {\r\n this.newsHeadlineLength = 155;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 120;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns3\") {\r\n this.newsHeadlineLength = 90;\r\n this.shortDescriptionLength = 140;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 120;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 75;\r\n this.shortDescriptionLength = 75;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns4\") {\r\n this.newsHeadlineLength = 60;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 15;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 100;\r\n }\r\n }\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n getStoryUrl(storyId, stories) {\r\n return (\r\n this.currentUrl.replace(\"home\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n stories.find((x) => x.staggingStoryId == storyId).storyTitle\r\n )\r\n );\r\n }\r\n\r\n homepageLoaded() {\r\n if (this.latestStoriesLoaded && this.initialLoaded) {\r\n this.resize();\r\n this.loader = false;\r\n }\r\n }\r\n\r\n getHomepage() {\r\n this.loader = true;\r\n this.mcService.getHomepageInitial(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Initial Load\");\r\n this.initialLoaded = true;\r\n this.homeModelResponse.featuredStories = response.featuredStories;\r\n this.homeModelResponse.mustRegisterToAccess =\r\n response.mustRegisterToAccess;\r\n this.homeModelResponse.mustRegisterToDownload =\r\n response.mustRegisterToDownload;\r\n this.homeModelResponse.hideCounters = response.hideCounters;\r\n this.homeModelResponse.latesStoryGridType = response.latesStoryGridType;\r\n this.grid = this.homeModelResponse.latesStoryGridType;\r\n this.homeModelResponse.title = response.title;\r\n this.homeModelResponse.bodyText = response.bodyText;\r\n this.homeModelResponse.additionalBodyText = response.additionalBodyText;\r\n this.homeModelResponse.socialSharing = response.socialSharing;\r\n\r\n this.fStories = response.featuredStories;\r\n this.selectedFs = this.homeModelResponse.featuredStories[0];\r\n for (let i = 1; i < this.fStories.length && i < 3; i++) {\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n for (const x of this.homeModelResponse.featuredStories) {\r\n this.images = x.images;\r\n this.video = x.video;\r\n this.audio = x.audio;\r\n this.document = x.document;\r\n }\r\n this.backgroundUrl =\r\n this.homeModelResponse?.featuredStories[0]?.fullHDUrl || \"\";\r\n\r\n for (const x of this.fStories) {\r\n if (x.fullHDUrl === \"\") {\r\n this.thumbUrl = x.thumbUrl;\r\n }\r\n }\r\n\r\n for (const featuredStory of this.homeModelResponse.featuredStories) {\r\n if (featuredStory.featuredEmbeddedCode) {\r\n featuredStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n featuredStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (this.homeModelResponse.socialSharing != null) {\r\n this.socials = this.homeModelResponse.socialSharing;\r\n }\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n this.mcService.getHomepageLatestStories(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Latest Stories\");\r\n this.latestStoriesLoaded = true;\r\n this.homeModelResponse.latestStories = response.latestStories;\r\n for (const latestStory of this.homeModelResponse.latestStories) {\r\n if (latestStory.featuredEmbeddedCode) {\r\n latestStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n latestStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.loadStoryGroupings();\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n loadStoryGroupings() {\r\n let count = 0;\r\n for (const story of this.homeModelResponse.latestStories) {\r\n if (this.storyGroupings[count].length >= 4) count++;\r\n if (!this.storyGroupings[count]) this.storyGroupings[count] = [];\r\n this.storyGroupings[count].push(story);\r\n }\r\n }\r\n\r\n changeStory(story: FeaturedStoriesModel, i) {\r\n this.videoUrl = \"\";\r\n this.images = story.images;\r\n this.video = story.video;\r\n this.audio = story.audio;\r\n this.document = story.document;\r\n this.selectedFs = story;\r\n if (story.mediaType == \"Image\") {\r\n this.backgroundUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.mediaType == \"Video\") {\r\n this.videoUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.featuredEmbeddedCode) {\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n this.activeSlide = i;\r\n }\r\n\r\n moveLeftBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll - moveAmount;\r\n if (this.brandsCurrentScroll < 0) this.brandsCurrentScroll = 0;\r\n }\r\n\r\n moveRightBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll + moveAmount;\r\n if (this.brandsCurrentScroll > this.brandsMaxScroll - this.innerWidth)\r\n this.brandsCurrentScroll = this.brandsMaxScroll - this.innerWidth;\r\n }\r\n\r\n prevSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != 0) {\r\n this.activeSlide = this.activeSlide - 1;\r\n } else {\r\n this.activeSlide = this.fStories.length - 1;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n nextSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != this.fStories.length - 1) {\r\n this.activeSlide = this.activeSlide + 1;\r\n } else {\r\n this.activeSlide = 0;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n changeSlide() {\r\n this.selectedFs = this.fStories[this.activeSlide];\r\n this.backgroundUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n for (const x of this.fStories) {\r\n if (x.mediaType == \"Video\") {\r\n this.videoUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n }\r\n }\r\n\r\n if (this.selectedFs.featuredEmbeddedCode) {\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n this.selectedFs.featuredEmbeddedCode\r\n );\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n }\r\n this.nextFStories = [];\r\n for (let i = this.activeSlide + 1; this.nextFStories.length < 2; i++) {\r\n if (i >= this.fStories.length) i = 0;\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n }\r\n\r\n readMore(id, title) {\r\n localStorage.setItem(\"storyId\", JSON.stringify(id));\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.googleAnalytics.emitArticleEvent(\"homepage\", id.staggingStoryId);\r\n this.googleAnalytics.emitReadMoreEvent(\r\n \"slider\",\r\n title,\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title)\r\n );\r\n this.router.navigate([\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title),\r\n ]);\r\n }\r\n\r\n goToMc(url, clientId) {\r\n this.mcService.redirectToMc(clientId).subscribe(\r\n (response: any) => {\r\n const token = response.token;\r\n if (url)\r\n window.location.href = url + '&token=' + token;\r\n },\r\n (error) => {\r\n if (url)\r\n window.location.href = url;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
1 ? 'has-child' : ''\">\r\n
\r\n {{ selectedFs?.category[0] }}\r\n
\r\n
\r\n
1\">\r\n
\r\n {{ category }}\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{ selectedFs?.storyTitle }}\r\n

\r\n

\r\n {{ selectedFs?.shortDescription }}\r\n

\r\n
\r\n
\r\n {{ language.readMore }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n

\r\n {{ language.latestStory }}\r\n

\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"brands\">\r\n
\r\n

\r\n {{ language.brands }}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n","import { UrlsModel } from \"../../models/links/urls.model\";\r\n\r\nexport class ContactsModel {\r\n public contactsH1Text: string;\r\n public contactsH2Text: string;\r\n public contactsH3Text: string;\r\n public contactsText: string;\r\n public contactsFinalText: string;\r\n public contactsQuoteText: string;\r\n public contactsSignature: string;\r\n public contactsBeforeStoreButtonsText: string;\r\n public contactsAfterStoreButtonsText: string;\r\n public contactsHeroImageUrl: string;\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n public contactsLinks: UrlsModel[];\r\n public ourTeam: TeamModel[];\r\n public rotary: RotaryModel[];\r\n\r\n constructor() {\r\n this.contactsH1Text = '';\r\n this.contactsH2Text = '';\r\n this.contactsH3Text = '';\r\n this.contactsQuoteText = '';\r\n this.contactsSignature = '';\r\n this.contactsText = '';\r\n this.contactsHeroImageUrl = '';\r\n this.contactsAfterStoreButtonsText = '';\r\n this.contactsBeforeStoreButtonsText = '';\r\n }\r\n}\r\nexport class TeamModel {\r\n public name: string;\r\n public email: string;\r\n public description: string;\r\n public position: string;\r\n public thumbUrl: string;\r\n}\r\nexport class RotaryModel {\r\n public day: string;\r\n public date: string;\r\n public name: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpRequestService } from '../../shared/services/http-request.service';\r\n\r\n@Injectable()\r\nexport class ContactsService {\r\n\r\n constructor(private http: HttpRequestService) {\r\n }\r\n\r\n private mediaCenterWebContactsUrl = environment.apiUrl + '/MediaCenterWeb/MediaCenterWebAboutUs';\r\n\r\n mediaCenterWebContacts() {\r\n return this.http.get(this.mediaCenterWebContactsUrl);\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { McService } from \"./shared/services/mc-service\";\r\nimport { Meta, MetaDefinition, Title } from \"@angular/platform-browser\";\r\nimport { MetaModel } from \"./models/meta/meta\";\r\nimport { ActivatedRoute, NavigationEnd, Router } from \"@angular/router\";\r\nimport { Location } from \"@angular/common\";\r\nimport { GoogleAnalyticsEventsService } from \"./shared/services/google-analytics-events.service\";\r\nimport { LayoutModel } from \"./layout/layout-model\";\r\nimport { PageStyle } from \"./models/style/style.model\";\r\nimport { Language } from \"./models/language/language.model\";\r\nimport { StorageService } from \"./shared/services/storage.service\";\r\nimport { FontsAndColorsService } from \"./shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"./shared/services/language.service\";\r\nimport { ToastContainerDirective, ToastrService } from \"ngx-toastr\";\r\nimport { OutBoundLinkClickInterceptService } from \"./shared/services/outbound-link-click-intercept.service\";\r\nimport { UserCentricsService } from \"./shared/services/user-centrics.service\";\r\n\r\ndeclare const Usercentrics: any;\r\n@Component({\r\n selector: \"app-root\",\r\n templateUrl: \"./app.component.html\",\r\n styleUrls: [\"./app.component.less\"],\r\n})\r\nexport class AppComponent implements OnInit {\r\n toastContainer: ToastContainerDirective;\r\n\r\n title = \"app\";\r\n metadatas: MetaModel;\r\n\r\n styles: PageStyle;\r\n layoutResponseModel: LayoutModel;\r\n loader = true;\r\n // language=new Language();\r\n sLng: number;\r\n language: Language;\r\n\r\n public toasterconfig = {\r\n closeButton: true,\r\n timeOut: 2000,\r\n };\r\n\r\n constructor(\r\n private mcService: McService,\r\n private titleService: Title,\r\n private meta: Meta,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private location: Location,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private userCentrics: UserCentricsService,\r\n private sService: StorageService,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n public languageService: LanguageService,\r\n private toastrService: ToastrService,\r\n private outboundLinkClickInterceptService: OutBoundLinkClickInterceptService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.toastrService.overlayContainer = this.toastContainer;\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.getMeta();\r\n this.getStyle();\r\n }\r\n\r\n setupUserCentrics() {\r\n if (window) {\r\n let key = \"uL39q46aEoNsHf\";\r\n if (this.metadatas.UCID && this.metadatas.UCID != \"\") {\r\n key = this.metadatas.UCID;\r\n }\r\n const script = document.createElement(\"script\");\r\n script.id = \"usercentrics-cmp\";\r\n script.src = \"https://app.usercentrics.eu/browser-ui/latest/loader.js\";\r\n script.setAttribute(\"data-settings-id\", key);\r\n script.async = true;\r\n script.addEventListener(\"load\", () => {\r\n console.log(\"Usercentrics script loaded\");\r\n });\r\n document.head.appendChild(script);\r\n window.addEventListener(\"ucEvent\", (event: any) => {\r\n if (event?.detail?.event === \"consent_status\")\r\n this.userCentrics.setConsents(event.detail);\r\n });\r\n }\r\n }\r\n\r\n getNewTitlelFromUrl(url: string): string {\r\n if (url == \"\") return \"Home\";\r\n if (url == \"stories\") return \"News\";\r\n if (url == \"media-library\") return \"Media\";\r\n if (url == \"sign-in\") return \"SignIn\";\r\n if (url == \"about-us\") return \"AboutUs\";\r\n if (url == \"register\") return \"Register\";\r\n if (url == \"brands\") return \"Brands\";\r\n if (url == \"legal\") return \"Legal\";\r\n if (url == \"contact-us\") return \"ContactUs\";\r\n if (url == \"contacts\") return \"Contacts\";\r\n }\r\n\r\n loadMetadata() {\r\n this.addGoogleVerificationMeta();\r\n let newTitle = this.getNewTitlelFromUrl(\r\n this.router.routerState.snapshot.url.split(\"/\")[1]\r\n );\r\n if (this.metadatas.metadatas.length === 0) {\r\n this.titleService.setTitle(\"DNA - Digital News Agency\");\r\n }\r\n console.log(this.metadatas.metadatas);\r\n for (let x = 0; x < this.metadatas.metadatas.length; x++) {\r\n if (this.metadatas.metadatas[x].pageType.includes(newTitle)) {\r\n if (this.metadatas.metadatas[x].pageTitle !== \"\") {\r\n this.titleService.setTitle(this.metadatas.metadatas[x].pageTitle);\r\n } else {\r\n this.titleService.setTitle(this.metadatas.metadatas[x].pageType);\r\n }\r\n this.meta.updateTag({\r\n name: \"keywords\",\r\n content: this.metadatas.metadatas[x].keywords,\r\n });\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: this.metadatas.metadatas[x].description,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: this.metadatas.metadatas[x].twitterTitle,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: this.metadatas.metadatas[x].twitterDescritption,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:image\",\r\n content: this.metadatas.metadatas[x].twitterImage,\r\n });\r\n }\r\n }\r\n this.addDefaultTitle(newTitle);\r\n\r\n // replace hardcoded tracking id with tracking id from database\r\n // this.metadatas.trackingID = \"HOLA\";\r\n if (this.metadatas.trackingID) {\r\n this.googleAnalytics.initGoogleAnalytics(this.metadatas.trackingID);\r\n }\r\n this.googleAnalytics.emitPageView(this.router.routerState.snapshot.url);\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n const title = this.router.routerState.snapshot.url;\r\n this.googleAnalytics.emitPageView(event.urlAfterRedirects);\r\n this.convertUrlToTitle(title);\r\n }\r\n });\r\n }\r\n\r\n addGoogleVerificationMeta() {\r\n var websitesWithMeta: Array = [\r\n \"https://bacardibrand.bacardilimited.com\",\r\n \"https://bacardigroup.bacardilimited.com\",\r\n \"https://bombaysapphire.bacardilimited.com\",\r\n \"https://dewars.bacardilimited.com\",\r\n \"http://mediacentre.easyjet.com\",\r\n \"http://press.economist.com\",\r\n \"https://greygoose.bacardilimited.com\",\r\n \"https://martini.bacardilimited.com\",\r\n \"https://digitalnewsagency.com\",\r\n ];\r\n\r\n var actualWebsite: String = window.location.origin;\r\n\r\n var metaDefinition: MetaDefinition = {\r\n name: \"google-site-verification\",\r\n content: \"7QMHUSc9Z4GkuYOm1zXTIQdSqf1c-VjzgaLqDgGfArU\",\r\n };\r\n\r\n if (websitesWithMeta.includes(actualWebsite)) {\r\n this.meta.updateTag(metaDefinition);\r\n }\r\n }\r\n\r\n getMeta() {\r\n this.mcService.getMeta().subscribe(\r\n (response: any) => {\r\n this.metadatas = response;\r\n this.loadMetadata();\r\n this.setupUserCentrics();\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n addDefaultTitle(newTitle: string) {\r\n if (!this.metadatas.metadatas.find((x) => x.pageType === newTitle)) {\r\n newTitle = newTitle;\r\n this.titleService.setTitle(this.formatUrlString(newTitle));\r\n this.meta.updateTag({ name: \"keywords\", content: newTitle });\r\n this.meta.updateTag({ name: \"description\", content: newTitle });\r\n this.meta.updateTag({ name: \"twitter:title\", content: newTitle });\r\n this.meta.updateTag({ name: \"twitter:description\", content: newTitle });\r\n this.meta.updateTag({ name: \"twitter:image\", content: \"\" });\r\n }\r\n\r\n if (this.router.routerState.snapshot.url === \"/sign-in\") {\r\n this.titleService.setTitle(\"Sign in\");\r\n this.meta.updateTag({ name: \"keywords\", content: \"Sign in\" });\r\n this.meta.updateTag({ name: \"description\", content: \"Sign in\" });\r\n this.meta.updateTag({ name: \"twitter:title\", content: \"Sign in\" });\r\n this.meta.updateTag({ name: \"twitter:description\", content: \"Sign in\" });\r\n this.meta.updateTag({ name: \"twitter:image\", content: \"\" });\r\n } else if (this.router.routerState.snapshot.url === \"/register\") {\r\n this.titleService.setTitle(\"Register\");\r\n this.meta.updateTag({ name: \"keywords\", content: \"Register\" });\r\n this.meta.updateTag({ name: \"description\", content: \"Register\" });\r\n this.meta.updateTag({ name: \"twitter:title\", content: \"Register\" });\r\n this.meta.updateTag({ name: \"twitter:description\", content: \"Register\" });\r\n this.meta.updateTag({ name: \"twitter:image\", content: \"\" });\r\n } else if (this.router.routerState.snapshot.url === \"/brands\") {\r\n this.titleService.setTitle(\"Brands\");\r\n this.meta.updateTag({ name: \"keywords\", content: \"Brands\" });\r\n this.meta.updateTag({ name: \"description\", content: \"Brands\" });\r\n this.meta.updateTag({ name: \"twitter:title\", content: \"Brands\" });\r\n this.meta.updateTag({ name: \"twitter:description\", content: \"Brands\" });\r\n this.meta.updateTag({ name: \"twitter:image\", content: \"\" });\r\n }\r\n }\r\n\r\n convertUrlToTitle(title) {\r\n let newTitle = this.getNewTitlelFromUrl(title.split(\"/\")[1]);\r\n if (this.metadatas.metadatas.length === 0) {\r\n this.titleService.setTitle(\"DNA - Digital News Agency\");\r\n }\r\n for (let x = 0; x < this.metadatas.metadatas.length; x++) {\r\n if (this.metadatas.metadatas[x].pageType.includes(newTitle)) {\r\n if (this.metadatas.metadatas[x].pageTitle !== \"\") {\r\n this.titleService.setTitle(this.metadatas.metadatas[x].pageTitle);\r\n } else {\r\n this.titleService.setTitle(this.metadatas.metadatas[x].pageType);\r\n }\r\n this.meta.updateTag({\r\n name: \"keywords\",\r\n content: this.metadatas.metadatas[x].keywords,\r\n });\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: this.metadatas.metadatas[x].description,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: this.metadatas.metadatas[x].twitterTitle,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: this.metadatas.metadatas[x].twitterDescritption,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:image\",\r\n content: this.metadatas.metadatas[x].twitterImage,\r\n });\r\n }\r\n }\r\n this.addDefaultTitle(newTitle);\r\n }\r\n\r\n getStyle() {\r\n this.mcService.getStyle().subscribe(\r\n (response: any) => {\r\n this.styles = response;\r\n this.fontsAndColorsService.setPageStyleInfo(response);\r\n this.loader = false;\r\n },\r\n (error) => {\r\n //\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n\r\n formatUrlString(url: string): string {\r\n let newUrl = \"\";\r\n\r\n if (url) {\r\n newUrl = url.charAt(0).toUpperCase() + url.slice(1);\r\n const words = newUrl.split(\"-\");\r\n if (words.length > 1) {\r\n newUrl = words[0] + \" \" + words[1];\r\n }\r\n }\r\n\r\n return newUrl;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { fromEvent as observableFromEvent, Observable } from \"rxjs\";\r\n\r\nimport { map, debounceTime, distinctUntilChanged } from \"rxjs/operators\";\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"app-debounce\",\r\n templateUrl: \"./debounce.component.html\",\r\n styleUrls: [\"./debounce.component.less\"],\r\n})\r\nexport class DebounceComponent implements OnInit {\r\n @Input() placeholder: string;\r\n @Input() delay = 500;\r\n @Input() styles: any;\r\n @Input() cssClass: string;\r\n @Output() value: EventEmitter = new EventEmitter();\r\n\r\n @Input() inputValue: string;\r\n\r\n constructor(private elementRef: ElementRef) {\r\n const eventStream = observableFromEvent(elementRef.nativeElement, \"keyup\")\r\n .pipe(map(() => this.inputValue))\r\n .pipe(debounceTime(this.delay), distinctUntilChanged());\r\n\r\n eventStream.subscribe((input) => this.value.emit(input));\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n \r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n \r\n
\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { McService } from '../../services/mc-service';\r\nimport { TermsModel } from '../../../routes/terms/terms-model';\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { LanguageService } from \"../../services/language.service\";\r\n\r\n@Component({\r\n selector: 'app-terms-popup',\r\n templateUrl: './terms-popup.component.html',\r\n styleUrls: ['./terms-popup.component.less']\r\n})\r\nexport class TermsPopupComponent implements OnInit {\r\n @Input() termsPopup: boolean;\r\n @Output() termsPopupChange = new EventEmitter();\r\n loader: boolean;\r\n termsResponseModel = new TermsModel();\r\n language: Language;\r\n\r\n constructor(private mcService: McService, private router: Router, private languageService: LanguageService,\r\n ) {\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n ngOnInit() {\r\n this.getTerms();\r\n window.scrollTo(0, 0);\r\n\r\n }\r\n\r\n getTerms() {\r\n this.loader = true;\r\n this.mcService.getTerms()\r\n .subscribe((response: any) => {\r\n this.termsResponseModel = response;\r\n this.loader = false;\r\n // if (this.termsResponseModel.mustRegisterToAccess && localStorage.getItem('Token') == null) {\r\n // this.router.navigateByUrl('/register');\r\n // }\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n\r\n close() {\r\n this.termsPopupChange.emit(false);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{ language.termsAndConditions }}

\r\n
\r\n
{{ language.disclaimer }}
\r\n
\r\n

\r\n

\r\n
\r\n
\r\n
\r\n \r\n
","export class UrlHelper {\r\n\r\n static getUrlTitle(title: string) {\r\n title = title.replace(/[\\W_]+/g, '-').toLowerCase();\r\n title = title.replace(/\\//g, '-').toLowerCase();\r\n\r\n if (title.indexOf('-') == 0) {\r\n title = title.substring(1, title.length - 1);\r\n }\r\n\r\n if (title.charAt(title.length - 1) == '-') {\r\n title = title.slice(0, -1);\r\n }\r\n title = title.replace(/assets/g,'');\r\n return title;\r\n }\r\n\r\n static getCurrentUrlHostOnly() {\r\n const split = window.location.href.split('/');\r\n return split[0] + '//' + split[2];\r\n\r\n }\r\n\r\n static replaceFullUrlTitle(url) {\r\n const split = url.split('/');\r\n\r\n split[2] = this.getUrlTitle(split[2]);\r\n\r\n let newUrl = '';\r\n\r\n split.forEach(s => newUrl += ('/' + s));\r\n\r\n return newUrl;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { environment } from \"../../../environments/environment\";\r\n\r\nimport algoliasearch from \"algoliasearch\";\r\nimport { forkJoin } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class AlgoliaService {\r\n private searchClient: any;\r\n private storiesIndex: any;\r\n private mediaIndex: any;\r\n private clientId: number;\r\n private superMediaCenter: boolean;\r\n\r\n constructor() {\r\n this.searchClient = algoliasearch(\r\n environment.algoliaApplicationId,\r\n environment.algoliaApiKey\r\n );\r\n this.storiesIndex = this.searchClient.initIndex(\r\n environment.algoliaStoriesIndex\r\n );\r\n this.mediaIndex = this.searchClient.initIndex(\r\n environment.algoliaMediaIndex\r\n );\r\n this.superMediaCenter = false;\r\n }\r\n\r\n setClientId(id: number) {\r\n this.clientId = id;\r\n }\r\n\r\n setSuperMediaCenter() {\r\n this.superMediaCenter = true;\r\n }\r\n\r\n getSuperMediaCenter() {\r\n return this.superMediaCenter;\r\n }\r\n\r\n async searchStories(query: string, page: number) {\r\n const languageId = Number(localStorage.getItem(\"lng\"));\r\n const currentMarket = JSON.parse(localStorage.getItem(\"currentMarket\"));\r\n let filters = \"\";\r\n if (this.superMediaCenter) {\r\n filters =\r\n \"(clientId = \" +\r\n this.clientId +\r\n \" OR parentClientId = \" +\r\n this.clientId +\r\n \" OR showOnDNASite = 1) AND languageId = \" +\r\n languageId;\r\n } else {\r\n filters =\r\n \"(clientId = \" +\r\n this.clientId +\r\n \" OR parentClientId = \" +\r\n this.clientId +\r\n \") AND languageId = \" +\r\n languageId;\r\n }\r\n filters += \" AND status = 1\";\r\n if (currentMarket) {\r\n filters += \" AND markets.id = \" + currentMarket.id;\r\n }\r\n let results = await this.storiesIndex.search(query, {\r\n filters: filters,\r\n page: page - 1,\r\n hitsPerPage: 60,\r\n });\r\n if (!this.superMediaCenter) {\r\n // ***\r\n results.hits = results.hits.filter(\r\n (story) =>\r\n story.clientId === this.clientId ||\r\n (story.parentClientId === this.clientId &&\r\n story.showOnRelatedParentSite == true)\r\n );\r\n }\r\n // console.log('Algolia Stories', results);\r\n return results;\r\n }\r\n\r\n async searchMedia(query: string, page: number) {\r\n let filters = \"(hasStory=1 OR isPublished=1)\";\r\n const languageId = Number(localStorage.getItem(\"lng\"));\r\n const currentMarket = JSON.parse(localStorage.getItem(\"currentMarket\"));\r\n if (!this.superMediaCenter) {\r\n const clientIdFilter = `(storyClientIds=${this.clientId} OR storyClientParentIds=${this.clientId})`;\r\n const directClientFilter = `(clientId=${this.clientId} OR parentClientId=${this.clientId})`;\r\n filters += ` AND (${clientIdFilter} OR ${directClientFilter})`;\r\n }\r\n\r\n if (currentMarket) {\r\n filters += \" AND marketIds = \" + currentMarket.id;\r\n }\r\n\r\n filters += \" AND (languageIds = \" + languageId + \" OR languageIds = 0)\"\r\n\r\n const results = await this.mediaIndex.search(query, {\r\n filters: filters,\r\n page: page - 1,\r\n hitsPerPage: 12,\r\n });\r\n // console.log('Algolia Media', results);\r\n return results;\r\n }\r\n\r\n async searchStoriesWithFilters(\r\n query: string,\r\n page: number,\r\n clientId: number = null,\r\n marketId: number = null,\r\n customCategoryId: number = null,\r\n dateFrom: Date = null,\r\n dateTo: Date = null) {\r\n\r\n const languageId = Number(localStorage.getItem(\"lng\"));\r\n const currentMarket = JSON.parse(localStorage.getItem(\"currentMarket\"));\r\n let filters = \"\";\r\n if (this.superMediaCenter) {\r\n if (clientId) {\r\n filters =\r\n \"clientId = \" +\r\n clientId + \" AND languageId = \" +\r\n languageId;\r\n } else {\r\n filters =\r\n \"(clientId = \" +\r\n this.clientId +\r\n \" OR parentClientId = \" +\r\n this.clientId +\r\n \" OR showOnDNASite = 1) AND languageId = \" +\r\n languageId;\r\n }\r\n } else {\r\n if (clientId) {\r\n filters =\r\n \"clientId = \" +\r\n clientId + \" AND languageId = \" +\r\n languageId;\r\n } else {\r\n filters =\r\n \"(clientId = \" +\r\n this.clientId +\r\n \" OR parentClientId = \" +\r\n this.clientId +\r\n \") AND languageId = \" +\r\n languageId;\r\n }\r\n }\r\n\r\n\r\n if (dateFrom) {\r\n filters += \" AND storyTimestamp >= \" + (dateFrom.getTime() / 1000)\r\n }\r\n\r\n if (dateTo) {\r\n filters += \" AND storyTimestamp <= \" + (dateTo.getTime() / 1000)\r\n }\r\n\r\n filters += \" AND status = 1\";\r\n\r\n if (marketId) {\r\n filters += \" AND markets.id = \" + marketId;\r\n } else if (currentMarket) {\r\n filters += \" AND markets.id = \" + currentMarket.id;\r\n }\r\n\r\n\r\n if (customCategoryId) {\r\n filters += \" AND customCategories.customCategoryId = \" + customCategoryId;\r\n }\r\n\r\n let results = await this.storiesIndex.search(query, {\r\n filters: filters,\r\n page: page - 1,\r\n hitsPerPage: 12,\r\n });\r\n return results;\r\n }\r\n\r\n\r\n async searchMediaWithFilters(\r\n query: string,\r\n page: number,\r\n pageSize: number,\r\n type: number = null,\r\n clientId: number = null,\r\n marketId: number = null,\r\n dateFrom: Date = null,\r\n dateTo: Date = null) {\r\n let filters = \"(hasStory=1 OR isPublished=1) \";\r\n const languageId = Number(localStorage.getItem(\"lng\"));\r\n const currentMarket = JSON.parse(localStorage.getItem(\"currentMarket\"));\r\n if (this.superMediaCenter) {\r\n if (clientId) {\r\n filters +=\r\n \" AND (clientId = \" + clientId +\r\n \" OR parentClientId = \" + clientId +\r\n \" OR storyClientIds = \" + clientId + \" OR storyClientParentIds = \" + clientId + \") \" +\r\n \" AND showOnDNASite = 1\";\r\n } else {\r\n filters +=\r\n \" AND (clientId = \" + this.clientId +\r\n \" OR parentClientId = \" + this.clientId +\r\n \" OR showOnDNASite = 1\" +\r\n \" OR storyClientIds = \" + this.clientId +\r\n \" OR storyClientParentIds = \" + this.clientId + \")\";\r\n }\r\n } else {\r\n if (clientId) {\r\n filters +=\r\n \" AND (clientId = \" + clientId +\r\n \" OR parentClientId = \" + clientId +\r\n \" OR storyClientIds = \" + clientId +\r\n \" OR storyClientParentIds = \" + clientId + \") \";\r\n } else {\r\n filters +=\r\n \" AND (clientId = \" + this.clientId +\r\n \" OR parentClientId = \" + this.clientId +\r\n \" OR storyClientIds = \" + this.clientId +\r\n \" OR storyClientParentIds = \" + this.clientId + \")\";\r\n }\r\n }\r\n\r\n if (currentMarket) {\r\n filters += \" AND marketIds = \" + currentMarket.id;\r\n }\r\n\r\n filters += \" AND (languageIds = \" + languageId + \" OR languageIds = 0)\"\r\n\r\n if (dateFrom) {\r\n filters += \" AND timestamp >= \" + (dateFrom.getTime() / 1000);\r\n }\r\n\r\n if (dateTo) {\r\n filters += \" AND timestamp <= \" + (dateTo.getTime() / 1000);\r\n }\r\n\r\n if (marketId) {\r\n filters += \" AND marketsIds = \" + marketId;\r\n }\r\n\r\n const audioObservable = this.mediaIndex.search(query, {\r\n filters: filters + \" AND type = 1\",\r\n page: page - 1,\r\n hitsPerPage: 0,\r\n });\r\n const videoObservable = this.mediaIndex.search(query, {\r\n filters: filters + \" AND type = 2\",\r\n page: page - 1,\r\n hitsPerPage: 0,\r\n });\r\n const imageObservable = this.mediaIndex.search(query, {\r\n filters: filters + \" AND type = 3\",\r\n page: page - 1,\r\n hitsPerPage: 0,\r\n });\r\n const documentObservable = this.mediaIndex.search(query, {\r\n filters: filters + \" AND type = 4\",\r\n page: page - 1,\r\n hitsPerPage: 0,\r\n });\r\n const resultsObservable = this.mediaIndex.search(query, {\r\n filters: type ? filters + \" AND type = \" + type : filters,\r\n page: page - 1,\r\n hitsPerPage: pageSize,\r\n });\r\n\r\n const data = {\r\n audios: 0,\r\n videos: 0,\r\n images: 0,\r\n documents: 0,\r\n total: 0,\r\n results: []\r\n }\r\n\r\n const response = forkJoin([audioObservable, videoObservable, imageObservable, documentObservable, resultsObservable])\r\n const results = await response.toPromise();\r\n data.audios = (results[0] as any).nbHits;\r\n data.videos = (results[1] as any).nbHits;\r\n data.images = (results[2] as any).nbHits;\r\n data.documents = (results[3] as any).nbHits;\r\n data.results = (results[4] as any).hits;\r\n data.total = data.audios + data.videos + data.images + data.documents;\r\n return data;\r\n }\r\n\r\n\r\n\r\n}\r\n","import { BaseLookupModel, CustomCategoryLookupModel } from '../search/search-model';\r\nimport { EnumModel } from '../../register/register-model';\r\n\r\nexport class ProfileModel {\r\n public mediaUserModel: UserManageModel;\r\n public customCatogories: CustomCategoryLookupModel[];\r\n public languages: BaseLookupModel[];\r\n public userGroups: EnumModel[];\r\n public adminModel: AdminModel;\r\n\r\n constructor() {\r\n this.mediaUserModel = new UserManageModel();\r\n this.adminModel = new AdminModel();\r\n }\r\n}\r\n\r\n\r\nexport class UserManageModel {\r\n public id: number;\r\n public fullName: string;\r\n public firstName: string;\r\n public lastName: string;\r\n public email: string;\r\n public password: string;\r\n public oldPassword: string;\r\n public confirmPassword: string;\r\n public telephoneNumber: string;\r\n public companyName: string;\r\n public mediaUserTypes: string[];\r\n public facebookToken: string;\r\n public facebookLink: string;\r\n public twitterLink: string;\r\n public linkedInLink: string;\r\n public instagramLink: string;\r\n public youTubeLink: string;\r\n public wordPressLink: string;\r\n public receiveNewsletter: boolean;\r\n public customCategoryIds: number[];\r\n public languageIds: number[];\r\n public isPasswordSet: boolean;\r\n}\r\n\r\nexport class AdminModel {\r\n public id: number;\r\n public fullName: string;\r\n public firstName: string;\r\n public lastName: string;\r\n public email: string;\r\n public password: string;\r\n public confirmPassword: string;\r\n public telephone: string;\r\n public telephoneNumber: string;\r\n public isPasswordSet: boolean;\r\n}\r\n","import { Directive,HostListener,ElementRef, Input,OnInit } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStyle]'\r\n})\r\nexport class StyleDirective implements OnInit{\r\n\r\n @Input() defaultColor:string;\r\n @Input() hoverColor:string;\r\n @Input() borderColor:string;\r\n @Input() color:string;\r\n\r\n\r\n constructor(private ElementRef:ElementRef) { }\r\n\r\n ngOnInit(){\r\n if(this.defaultColor!=null){\r\n this.ElementRef.nativeElement.style.backgroundColor=this.defaultColor;\r\n }\r\n if(this.borderColor!=null){\r\n this.ElementRef.nativeElement.style.borderColor=this.borderColor;\r\n }\r\n if(this.color!=null){\r\n this.ElementRef.nativeElement.style.color=this.color;\r\n }\r\n }\r\n\r\n @HostListener('mouseenter') mouseenter(eventData:Event){\r\n if(this.hoverColor!=null){\r\n this.ElementRef.nativeElement.style.backgroundColor=this.hoverColor;\r\n }\r\n }\r\n\r\n @HostListener('mouseleave') mouseleave(eventData:Event){\r\n if(this.defaultColor!=null){\r\n this.ElementRef.nativeElement.style.backgroundColor=this.defaultColor;\r\n }\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n ViewChild,\r\n HostListener,\r\n} from \"@angular/core\";\r\nimport { PopupModel } from \"./popup-model\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { saveAs } from \"file-saver\";\r\n\r\nimport { McService } from \"../../services/mc-service\";\r\nimport { StorageService } from \"../../services/storage.service\";\r\nimport { TokenManagerService } from \"../../services/token-manager.service\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { LayoutModel } from \"../../../layout/layout-model\";\r\nimport { FontsAndColorsService } from \"../../services/fonts-and-colors.service\";\r\nimport { DownloadAddToModel } from \"../../../routes/media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { DownloadMediaModel } from \"../../../download/download-model\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\n\r\n@Component({\r\n selector: \"app-popup\",\r\n templateUrl: \"./popup.component.html\",\r\n styleUrls: [\"./popup.component.less\"],\r\n})\r\nexport class PopupComponent implements OnInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n @Input() popup: boolean;\r\n @Input() mediaId: number;\r\n @Input() isPublished: boolean;\r\n @Input() autoplay: boolean;\r\n @Input() hideCounters = false;\r\n @Output() popupChange = new EventEmitter();\r\n @Output() popupClosed = new EventEmitter();\r\n @ViewChild(\"video\") videoplayer: any;\r\n loginPopup: boolean;\r\n disabledButton = false;\r\n loader: boolean;\r\n downloadIds: any[] = [];\r\n video = document.getElementById(\"video\");\r\n user: any;\r\n styles = new PageStyle();\r\n popupModelResponse = new PopupModel();\r\n socials: string[] = [];\r\n language: Language;\r\n sLng: number;\r\n urlForShare: string;\r\n token: string;\r\n dropdownRecent: boolean;\r\n mediaModel: any;\r\n playerSource: string;\r\n\r\n downloadSubscription: any;\r\n redirectToStoryClicked = false;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private http: HttpClient,\r\n private languageService: LanguageService,\r\n private sService: StorageService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private router: Router,\r\n private sanitizer: DomSanitizer,\r\n private route: ActivatedRoute\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n this.token = localStorage.getItem(\"Token\");\r\n\r\n this.route.params.subscribe((params) => {\r\n if (this.redirectToStoryClicked) {\r\n this.getData();\r\n }\r\n //\r\n });\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n @HostListener(\"document:keyup\", [\"$event\"])\r\n handleKeyboardEvent(event: KeyboardEvent) {\r\n if (event.keyCode === 27) {\r\n this.closePopup();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n document.body.classList.add(\"noHeader\");\r\n document.body.classList.add(\"noScroll\");\r\n }\r\n\r\n ngOnDestroy() {\r\n document.body.classList.remove(\"noHeader\");\r\n document.body.classList.remove(\"noScroll\");\r\n }\r\n\r\n getData() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.dropdownRecent = false;\r\n this.loader = true;\r\n this.user = TokenManagerService.getUser();\r\n this.getMediaDetail();\r\n\r\n if (this.user.cmsUser == null) {\r\n this.addViewToMedia();\r\n }\r\n this.downloadIds.push(this.mediaId);\r\n }\r\n\r\n updateSharedNumber(e) {\r\n const component = this;\r\n this.mediaModel = component.popupModelResponse.media;\r\n this.mediaModel.shares = e;\r\n }\r\n\r\n closePopup() {\r\n const component = this;\r\n this.mediaModel = component.popupModelResponse.media;\r\n this.popupChange.emit(false);\r\n this.popupClosed.emit(this.mediaModel);\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.dropdownRecent = false;\r\n }\r\n }\r\n\r\n addViewToMedia() {\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n this.googleAnalytics.emitEvent('viewmedia',\r\n \"media/\" + this.mediaId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n this.mcService.addViewToMedia(this.mediaId, this.user.id, this.isPublished).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n const niz = new DownloadAddToModel();\r\n if (this.isPublished) {\r\n niz.publishedMediaIds = [this.mediaId];\r\n niz.publishedMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent('downloadMedia',\r\n \"media/\" + mediaId,\r\n \"download-pm\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n niz.storyMediaIds = [];\r\n }\r\n else {\r\n niz.storyMediaIds = [this.mediaId];\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent('downloadMedia',\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n niz.publishedMediaIds = [];\r\n }\r\n niz.userId = this.user.id;\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getMediaUrl() {\r\n this.urlForShare = this.popupModelResponse.media.shareUrl;\r\n }\r\n\r\n goToStory() {\r\n this.redirectToStoryClicked = true;\r\n this.router.navigateByUrl(this.popupModelResponse.alsoInStoryLink);\r\n }\r\n\r\n getPosition(string, subString, index) {\r\n return string.split(subString, index).join(subString).length;\r\n }\r\n\r\n getMediaDetail() {\r\n this.loader = true;\r\n this.mcService.getMediaDetail(this.mediaId, this.sLng, this.isPublished).subscribe(\r\n (response: any) => {\r\n this.popupModelResponse = response;\r\n\r\n if (\r\n this.popupModelResponse.downloadLinks.filter((d) => !d.isOriginal)\r\n .length > 0\r\n ) {\r\n this.playerSource = this.popupModelResponse.downloadLinks.filter(\r\n (d) => !d.isOriginal\r\n )[0].downloadUrl;\r\n } else {\r\n this.playerSource = this.popupModelResponse.downloadLinks.filter(\r\n (d) => d.isOriginal\r\n )[0].downloadUrl;\r\n }\r\n\r\n if (\r\n this.popupModelResponse.mustRegisterToAccess &&\r\n !this.popupModelResponse.anonymousShare &&\r\n !this.token\r\n ) {\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n\r\n if (this.popupModelResponse.socialSharing != null) {\r\n this.socials = this.popupModelResponse.socialSharing;\r\n }\r\n if (this.popupModelResponse.media.mediaType === \"Document\") {\r\n this.popupModelResponse.media.thumbUrl =\r\n \"assets/images/document_default.png\";\r\n } else if (this.popupModelResponse.media.mediaType === \"Audio\") {\r\n this.popupModelResponse.media.thumbUrl =\r\n \"assets/images/audio_default.png\";\r\n }\r\n this.getMediaUrl();\r\n this.loader = false;\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n cancelDownload(media: DownloadMediaModel) {\r\n if (this.downloadSubscription) {\r\n this.downloadSubscription.unsubscribe();\r\n this.disabledButton = false;\r\n media.downloadActive = false;\r\n }\r\n }\r\n\r\n // returnDownloadUrl() {\r\n // return ('test string');\r\n // }\r\n\r\n download(media: DownloadMediaModel) {\r\n const iOS =\r\n !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);\r\n\r\n if (iOS) {\r\n try {\r\n (window as any).webkit.messageHandlers.downloadClicked.postMessage({\r\n url: media.downloadUrl,\r\n });\r\n } catch (err) { }\r\n\r\n return;\r\n }\r\n\r\n if (\r\n this.popupModelResponse.mustRegisterToDownload &&\r\n !this.popupModelResponse.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n if (!this.disabledButton) {\r\n const component = this;\r\n component.disabledButton = true;\r\n media.downloadActive = true;\r\n\r\n this.downloadSubscription = this.http\r\n .get(media.downloadUrl, { responseType: \"blob\" })\r\n .subscribe(\r\n (blob: Blob) => {\r\n const filename = media.downloadUrl.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n\r\n if (!this.user.cmsUser) {\r\n component.popupModelResponse.media.downloads++;\r\n }\r\n\r\n component.disabledButton = false;\r\n media.downloadActive = false;\r\n\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n },\r\n (error) => {\r\n component.disabledButton = false;\r\n media.downloadActive = false;\r\n }\r\n );\r\n }\r\n }\r\n }\r\n\r\n refreshMediaLinks() {\r\n this.getMediaDetail();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \"{{\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ popupModelResponse?.media?.name | replace : \"_\" : \" \" }}\r\n
\r\n
\r\n
\r\n \r\n {{ popupModelResponse?.media?.views }}\r\n
\r\n
\r\n \r\n {{ popupModelResponse?.media?.downloads }}\r\n
\r\n
{{ language.latestDownloads }}
\r\n
\r\n {{ lastDownload }}\r\n
\r\n
\r\n {{ language.noDownloads }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ language.availableFormats }}:
\r\n
    \r\n
    \r\n
  • \r\n
    \r\n \r\n {{ popup.label }}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
  • \r\n
    \r\n
\r\n
\r\n
{{ language.alsoAvailableIn }}:
\r\n \r\n
\r\n
{{ popupModelResponse?.alsoInShortDescription }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TokenManagerService } from '../../shared/services/token-manager.service';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { PageStyle } from '../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../shared/services/fonts-and-colors.service';\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { StorageService } from '../../shared/services/storage.service';\r\nimport { SavedStoryService } from '../../shared/services/saved-story.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { McService } from '../../shared/services/mc-service';\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\n\r\n@Component({\r\n selector: 'app-unsubscribe-newsletter',\r\n templateUrl: './unsubscribe-newsletter.component.html',\r\n styleUrls: ['./unsubscribe-newsletter.component.less']\r\n})\r\nexport class UnsubscribeNewsletterComponent implements OnInit {\r\n unsubscribeCode: string;\r\n loading: boolean = false;\r\n styles: PageStyle;\r\n buttonsHelper = ButtonsHelper;\r\n language: Language;\r\n\r\n constructor(\r\n private authLoginService: TokenManagerService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private sService: StorageService,\r\n private savedStoryService: SavedStoryService,\r\n private toastr: ToastrService,\r\n private mcService: McService,\r\n private languageService: LanguageService,\r\n ) {\r\n this.styles = this.fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n this.unsubscribeCode = params[\"code\"];\r\n });\r\n }\r\n\r\n unsubscribe() {\r\n this.loading = true;\r\n this.mcService.unsubscribeFromNewsletter(this.unsubscribeCode).subscribe(\r\n () => {\r\n this.toastr.success(\"You have successfully unsubscribed from our newsletter.\");\r\n this.router.navigate(['/']);\r\n this.loading = false;\r\n },\r\n (error: any) => {\r\n this.toastr.error(\"Something went wrong. Please try again later.\");\r\n this.router.navigate(['/']);\r\n }\r\n );\r\n }\r\n\r\n cancel() {\r\n this.router.navigate(['/']);\r\n }\r\n\r\n}\r\n","
\r\n
{{ language.newsletter }}
\r\n
{{ language.suscribeConfirmation }}
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { file } from \"jszip\";\r\nimport { Subject } from \"rxjs\";\r\nimport { MyFilesModel } from \"./my-files-model\";\r\n\r\n@Injectable()\r\nexport class MyFilesService {\r\n public files: Subject = new Subject();\r\n\r\n myFiles: MyFilesModel;\r\n\r\n constructor() { }\r\n\r\n getFiles(): MyFilesModel {\r\n let storyMediaIds;\r\n let publishedMediaIds;\r\n if (localStorage.getItem(\"Token\") === null) {\r\n storyMediaIds = JSON.parse(localStorage.getItem(\"anonCart\"));\r\n publishedMediaIds = JSON.parse(localStorage.getItem(\"anonPublished\"));\r\n } else {\r\n storyMediaIds = JSON.parse(localStorage.getItem(\"cart\"));\r\n publishedMediaIds = JSON.parse(localStorage.getItem(\"published\"));\r\n }\r\n if (storyMediaIds === null) storyMediaIds = [];\r\n if (publishedMediaIds === null) publishedMediaIds = [];\r\n return new MyFilesModel(storyMediaIds, publishedMediaIds);\r\n }\r\n\r\n getMyFiles(): MyFilesModel {\r\n if (!this.myFiles || this.myFiles.length == 0) {\r\n this.myFiles = this.getFiles();\r\n }\r\n if (!this.myFiles)\r\n this.myFiles = new MyFilesModel([], []);\r\n return this.myFiles;\r\n }\r\n\r\n setMyFiles(myFiles: MyFilesModel) {\r\n this.myFiles = myFiles;\r\n if (localStorage.getItem(\"Token\") === null) {\r\n if (myFiles.storyMediaIds.length > 0) localStorage.setItem(\"anonCart\", JSON.stringify(myFiles.storyMediaIds));\r\n if (myFiles.publishedMediaIds.length > 0) localStorage.setItem(\"anonPublished\", JSON.stringify(myFiles.publishedMediaIds));\r\n } else {\r\n if (myFiles.storyMediaIds.length > 0) localStorage.setItem(\"cart\", JSON.stringify(myFiles.storyMediaIds));\r\n if (myFiles.publishedMediaIds.length > 0) localStorage.setItem(\"published\", JSON.stringify(myFiles.publishedMediaIds));\r\n }\r\n this.files.next(myFiles);\r\n }\r\n\r\n pushMyFiles(file: number, isPublished: boolean = false) {\r\n if (!this.myFiles) this.myFiles = this.getMyFiles();\r\n if (isPublished) {\r\n if (this.myFiles.publishedMediaIds.indexOf(file) >= 0) return;\r\n this.myFiles.publishedMediaIds.push(file);\r\n }\r\n else {\r\n if (this.myFiles.storyMediaIds.indexOf(file) >= 0) return;\r\n this.myFiles.storyMediaIds.push(file);\r\n }\r\n\r\n if (localStorage.getItem(\"Token\") === null) {\r\n if (isPublished) localStorage.setItem(\"anonPublished\", JSON.stringify(this.myFiles.publishedMediaIds));\r\n else localStorage.setItem(\"anonCart\", JSON.stringify(this.myFiles.storyMediaIds));\r\n } else {\r\n if (isPublished) localStorage.setItem(\"published\", JSON.stringify(this.myFiles.publishedMediaIds));\r\n else localStorage.setItem(\"cart\", JSON.stringify(this.myFiles.storyMediaIds));\r\n }\r\n this.files.next(this.myFiles);\r\n }\r\n\r\n clearFiles() {\r\n this.myFiles = new MyFilesModel([], []);\r\n if (localStorage.getItem(\"Token\") === null) {\r\n localStorage.setItem(\"anonCart\", JSON.stringify(this.myFiles.storyMediaIds));\r\n localStorage.setItem(\"anonPublished\", JSON.stringify(this.myFiles.publishedMediaIds));\r\n } else {\r\n localStorage.setItem(\"cart\", JSON.stringify(this.myFiles.storyMediaIds));\r\n localStorage.setItem(\"published\", JSON.stringify(this.myFiles.publishedMediaIds));\r\n }\r\n this.files.next(this.myFiles);\r\n }\r\n\r\n deleteFile(id: number, isPublished: boolean = false) {\r\n if (!this.myFiles) this.myFiles = this.getMyFiles();\r\n if (isPublished) {\r\n let index = this.myFiles.publishedMediaIds.indexOf(id);\r\n if (index >= 0) {\r\n this.myFiles.publishedMediaIds.splice(index, 1);\r\n if (localStorage.getItem(\"Token\") === null) localStorage.setItem(\"anonPublished\", JSON.stringify(this.myFiles.publishedMediaIds));\r\n else localStorage.setItem(\"published\", JSON.stringify(this.myFiles.publishedMediaIds));\r\n this.files.next(this.myFiles);\r\n }\r\n } else {\r\n let index = this.myFiles.storyMediaIds.indexOf(id);\r\n if (index >= 0) {\r\n this.myFiles.storyMediaIds.splice(index, 1);\r\n if (localStorage.getItem(\"Token\") === null) localStorage.setItem(\"anonCart\", JSON.stringify(this.myFiles.storyMediaIds));\r\n else localStorage.setItem(\"cart\", JSON.stringify(this.myFiles.storyMediaIds));\r\n this.files.next(this.myFiles);\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { McService } from '../../shared/services/mc-service';\r\nimport { BrandsManageModel, BrandsModel } from './brands-model';\r\nimport { Router } from '@angular/router';\r\nimport { TokenManagerService } from '../../shared/services/token-manager.service';\r\nimport { StorageService } from '../../shared/services/storage.service';\r\ndeclare var $: any;\r\nimport { LanguageService } from '../../shared/services/language.service';\r\nimport { Language } from '../../models/language/language.model';\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport local_store from 'devextreme/data/local_store';\r\n\r\n@Component({\r\n selector: 'app-brands',\r\n templateUrl: './brands.component.html',\r\n styleUrls: ['./brands.component.less']\r\n})\r\nexport class BrandsComponent implements OnInit {\r\n dropdown = false;\r\n language: Language;\r\n categoryLabel: string;\r\n category = ['company', 'company', 'company'];\r\n visibleBrands: BrandsManageModel[] = [];\r\n noBrands = false;\r\n searchResult: boolean;\r\n styles = new PageStyle();\r\n\r\n brandsResponse = new BrandsModel();\r\n loader: boolean;\r\n query: any;\r\n\r\n constructor(private mcService: McService, private languageService: LanguageService, public fontsAndColorsService: FontsAndColorsService, private router: Router, private sService: StorageService) {\r\n this.language = languageService.getLanguage();\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getBrands();\r\n this.sService.getSearch().subscribe(term => {\r\n this.searchResult = term;\r\n });\r\n this.categoryLabel = this.language.categories;\r\n }\r\n\r\n getBrands() {\r\n this.loader = true;\r\n this.mcService.getBrands()\r\n .subscribe((response: any) => {\r\n this.brandsResponse = response;\r\n // if (this.brandsResponse.mustRegisterToAccess && localStorage.getItem('Token') == null) {\r\n // sessionStorage.setItem('redirectUrl', '/' + window.location.pathname);\r\n // this.router.navigateByUrl('/sign-in');\r\n // }\r\n this.visibleBrands = response.clients;\r\n this.loader = false;\r\n if (this.brandsResponse.customCategories && this.brandsResponse.customCategories.length > 0)\r\n this.brandsResponse.customCategories.unshift({ id: 0, parentId: 0, label: 'All' });\r\n if (this.brandsResponse.mainCategories && this.brandsResponse.mainCategories.length > 0)\r\n this.brandsResponse.mainCategories.unshift({ id: 0, parentId: 0, label: 'All' });\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n\r\n // mediaCenter(media) {\r\n // if (media != null || media.length != 0) {\r\n // window.location.href = media;\r\n // }\r\n // }\r\n\r\n brandStories(brandName) {\r\n this.router.navigateByUrl('/brands/' + brandName);\r\n }\r\n\r\n filter(ccId) {\r\n this.visibleBrands = [];\r\n for (const client of this.brandsResponse.clients) {\r\n let niz2 = client.customCategories ? client.customCategories.filter(x => x.id === ccId.id) : client.mainCategories.filter(x => x.id === ccId.id);\r\n if (niz2.length > 0) {\r\n this.visibleBrands.push(client);\r\n }\r\n if (ccId.id === 0) {\r\n this.visibleBrands.push(client);\r\n }\r\n }\r\n // if (this.visibleBrands.length === 0) {\r\n // this.noBrands = true;\r\n // }\r\n }\r\n\r\n goToMc(url, clientId) {\r\n this.mcService.redirectToMc(clientId).subscribe(\r\n (response: any) => {\r\n const token = response.token;\r\n if (url) \r\n window.location.href = url + '&token=' + token;\r\n },\r\n (error) => {\r\n if (url)\r\n window.location.href = url;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n

Brands

\r\n
\r\n
\r\n
\r\n

\r\n {{ language.brands }}\r\n

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \"{{\r\n
\r\n
\r\n {{ brand.name }}\r\n
\r\n
\r\n
\r\n {{ language.noBrandsInCustomCategory }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"{{\r\n
\r\n
\r\n {{ brand.name }}\r\n
\r\n
\r\n
\r\n {{ language.noBrandsInCustomCategory }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { CustomValidators } from \"ng2-validation\";\r\nimport { ProfileModel } from \"../../header/profile/profile-model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { DownloadBoxService } from \"../../shared/services/download-box.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { DownloadAddToModel } from \"../media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { SavedStoryService } from \"../../shared/services/saved-story.service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MyFilesService } from \"../../shared/services/my-files.service\";\r\nimport { DeleteAccountService } from \"../../shared/services/delete-account.service\";\r\nimport { MyFilesModel } from \"../../shared/services/my-files-model\";\r\nimport { PasswordCheckService } from \"../../shared/services/password-check.service\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ToastrConfig } from \"../../shared/helpers/toastr-config\";\r\n\r\n@Component({\r\n selector: \"app-file-history\",\r\n templateUrl: \"./file-history.component.html\",\r\n styleUrls: [\"./file-history.component.less\"],\r\n})\r\nexport class FileHistoryComponent implements OnInit {\r\n loader = 0;\r\n language: Language;\r\n filters: any;\r\n fileType = \"all\";\r\n fileHistoryModel: any = [];\r\n filesFromCart: any = [];\r\n editFormOpened: boolean = false;\r\n deleteAccount: boolean = false;\r\n addDropdown: boolean;\r\n isPasswordSet: boolean;\r\n passwordForDeleting: string;\r\n dropdownStyle: boolean;\r\n dropdownLabel: string;\r\n dropdownLabel2: string;\r\n dropdownLabel3: string;\r\n list: string[];\r\n list2: string[];\r\n list3: string[];\r\n patternPassword = /^\\S*$/;\r\n isAdmin = false;\r\n confirmError = false;\r\n facebook = false;\r\n twitter = false;\r\n instagram = false;\r\n linkedin = false;\r\n youtube = false;\r\n wordpress = false;\r\n dropdown = false;\r\n languageDropDown: boolean;\r\n categoryDropdown: boolean;\r\n valForm: FormGroup;\r\n categories: any[] = [];\r\n languages: any[] = [];\r\n updateMessage: string;\r\n oldPassword: boolean;\r\n showPw: boolean;\r\n enterPw: boolean;\r\n mediaUser: boolean;\r\n users: any[] = [];\r\n allUsers: string[] = [];\r\n userType: string[] = [];\r\n usersToShow: any[] = [];\r\n cartMedias: any[];\r\n cartFilesOpened: boolean = true;\r\n noMediaUserType: boolean;\r\n userFilled: boolean;\r\n userFilledValid: boolean;\r\n registerResponseModel = new ProfileModel();\r\n dateFrom: string | number | Date;\r\n dateTo: string | number | Date;\r\n dateToButton: boolean;\r\n dateFromButton: boolean;\r\n user: any = {};\r\n cart: MyFilesModel = new MyFilesModel([], []);\r\n activeSection = \"file-history\";\r\n savedStories: any = {};\r\n languageId: number;\r\n cartFiles: {};\r\n loginAttempts: any[];\r\n constructor(\r\n private languageService: LanguageService,\r\n private mcService: McService,\r\n private fb: FormBuilder,\r\n private sService: StorageService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private http: HttpClient,\r\n private downloadBoxService: DownloadBoxService,\r\n private savedStoryService: SavedStoryService,\r\n private router: Router,\r\n private myFilesService: MyFilesService,\r\n private deleteAccountService: DeleteAccountService,\r\n private authService: TokenManagerService,\r\n private checkPasswordService: PasswordCheckService,\r\n private toastr: ToastrService\r\n ) {\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n ngOnInit() {\r\n this.languageId = Number(localStorage.getItem(\"lng\"));\r\n this.isPasswordSet = TokenManagerService.getUser().isPasswordSet;\r\n this.myFilesService.files.subscribe((files) => {\r\n this.updateCartFiles(files);\r\n });\r\n // this.sService.getPw().subscribe(term => {\r\n // this.isPasswordSet = term;\r\n // });\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.updateCartFiles(this.cart);\r\n this.getDownloadBoxes();\r\n this.getSavedStories();\r\n this.getAccount();\r\n this.getLoginAttempts();\r\n this.valForm = this.fb.group({\r\n firstname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n lastname: [\r\n null,\r\n Validators.compose([Validators.required, Validators.maxLength(50)]),\r\n ],\r\n telephone: [null],\r\n newsletter: [null],\r\n confirmPassword: [null],\r\n oldPassword: [null],\r\n facebook: [null],\r\n twitter: [null],\r\n instagram: [null],\r\n linkedin: [null],\r\n youtube: [null],\r\n wordpress: [null],\r\n password: [\r\n null,\r\n Validators.compose([\r\n Validators.maxLength(50),\r\n Validators.minLength(8),\r\n Validators.pattern(this.patternPassword),\r\n ]),\r\n ],\r\n email: [\r\n null,\r\n Validators.compose([Validators.required, CustomValidators.email]),\r\n ],\r\n company: [null],\r\n });\r\n\r\n this.addDropdown = false;\r\n this.dropdownLabel = \"Select media category\";\r\n this.dropdownLabel2 = \"Select categories\";\r\n this.dropdownLabel3 = \"Select your languages\";\r\n this.list = [\"dummy\", \"dumyy\"];\r\n this.list2 = [\"dummy\", \"dumyy\"];\r\n this.list3 = [\"dummy\", \"dumyy\"];\r\n this.filters = [\r\n {\r\n type: \"all\",\r\n text: this.language.allFiles,\r\n faClass: \"fal fa-archive\",\r\n },\r\n {\r\n type: \"image\",\r\n text: this.language.imageFiles,\r\n faClass: \"fal fa-camera-retro\",\r\n },\r\n {\r\n type: \"video\",\r\n text: this.language.videoFiles,\r\n faClass: \"fal fa-video\",\r\n },\r\n {\r\n type: \"document\",\r\n text: this.language.documents,\r\n faClass: \"fal fa-file\",\r\n },\r\n {\r\n type: \"audio\",\r\n text: this.language.audioFiles,\r\n faClass: \"fal fa-volume-up\",\r\n },\r\n ];\r\n }\r\n\r\n getLoginAttempts() {\r\n this.mcService.getLoginAttempts(TokenManagerService.getUser().id, 1, 10).subscribe(\r\n (response: any) => {\r\n localStorage.setItem(\"loginAttempts\", JSON.stringify(response));\r\n this.loginAttempts = response;\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n filterType(type) {\r\n this.fileType = type;\r\n }\r\n\r\n getSelectedCategoriesText(): string {\r\n if (\r\n this.categories == null ||\r\n this.categories == undefined ||\r\n this.categories.length == 0\r\n ) {\r\n return \"\";\r\n }\r\n let text = \"\";\r\n for (let i = 0; i < this.categories.length - 1; i++) {\r\n text += this.categories[i] + \", \";\r\n }\r\n text += this.categories[this.categories.length - 1];\r\n if (text.length > 30) {\r\n text = text.substring(0, 30) + \"...\";\r\n }\r\n return text;\r\n }\r\n\r\n isPwFocus: boolean = false;\r\n onPwFocus() {\r\n this.isPwFocus = true;\r\n }\r\n onPwBlur() {\r\n this.isPwFocus = false;\r\n }\r\n\r\n getAccount() {\r\n this.loader++;\r\n this.mcService.getUpdate().subscribe(\r\n (response: any) => {\r\n this.registerResponseModel = response;\r\n this.isAdmin = !!this.registerResponseModel.adminModel?.id;\r\n\r\n if (!this.isAdmin) {\r\n this.userType =\r\n this.registerResponseModel.mediaUserModel.mediaUserTypes;\r\n for (const x of this.registerResponseModel.userGroups) {\r\n for (const y of this.userType) {\r\n if (x.id === y) {\r\n x.checked = true;\r\n this.usersToShow.push(x.id);\r\n this.users.push(x.id);\r\n }\r\n }\r\n }\r\n this.allUsers = this.users;\r\n if (\r\n this.registerResponseModel.mediaUserModel.facebookLink != \"\" &&\r\n this.registerResponseModel.mediaUserModel.facebookLink !== undefined\r\n ) {\r\n this.facebook = true;\r\n }\r\n if (\r\n this.registerResponseModel.mediaUserModel.twitterLink != \"\" &&\r\n this.registerResponseModel.mediaUserModel.twitterLink !== undefined\r\n ) {\r\n this.twitter = true;\r\n }\r\n if (\r\n this.registerResponseModel.mediaUserModel.instagramLink != \"\" &&\r\n this.registerResponseModel.mediaUserModel.instagramLink !==\r\n undefined\r\n ) {\r\n this.instagram = true;\r\n }\r\n if (\r\n this.registerResponseModel.mediaUserModel.youTubeLink != \"\" &&\r\n this.registerResponseModel.mediaUserModel.youTubeLink !== undefined\r\n ) {\r\n this.youtube = true;\r\n }\r\n if (\r\n this.registerResponseModel.mediaUserModel.linkedInLink != \"\" &&\r\n this.registerResponseModel.mediaUserModel.linkedInLink !== undefined\r\n ) {\r\n this.linkedin = true;\r\n }\r\n if (\r\n this.registerResponseModel.mediaUserModel.wordPressLink != \"\" &&\r\n this.registerResponseModel.mediaUserModel.wordPressLink !==\r\n undefined\r\n ) {\r\n this.wordpress = true;\r\n }\r\n for (const x of this.registerResponseModel.mediaUserModel\r\n .languageIds) {\r\n for (const y of this.registerResponseModel.languages) {\r\n if (x === y.id) {\r\n y.checked = true;\r\n this.languages.push(y.label);\r\n }\r\n }\r\n }\r\n for (const x of this.registerResponseModel.mediaUserModel\r\n .customCategoryIds) {\r\n for (const y of this.registerResponseModel.customCatogories) {\r\n if (x === y.id) {\r\n y.marked = true;\r\n this.categories.push(y.label);\r\n }\r\n }\r\n }\r\n } else {\r\n this.registerResponseModel.adminModel.telephoneNumber =\r\n this.registerResponseModel.adminModel.telephone;\r\n }\r\n },\r\n (error) => { },\r\n () => {\r\n this.loader--;\r\n }\r\n );\r\n }\r\n\r\n addLanguage(lang) {\r\n const index = this.registerResponseModel.mediaUserModel.languageIds.indexOf(\r\n lang.id\r\n );\r\n lang.checked = !lang.checked;\r\n if (lang.checked) {\r\n this.registerResponseModel.mediaUserModel.languageIds.push(lang.id);\r\n this.languages.push(lang.label);\r\n } else {\r\n this.registerResponseModel.mediaUserModel.languageIds.splice(index, 1);\r\n this.languages.splice(index, 1);\r\n }\r\n }\r\n\r\n addCategory(category, event) {\r\n const index =\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.indexOf(\r\n category.id\r\n );\r\n category.marked = !category.marked;\r\n if (category.marked) {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.push(\r\n category.id\r\n );\r\n this.categories.push(category.label);\r\n } else {\r\n this.registerResponseModel.mediaUserModel.customCategoryIds.splice(\r\n index,\r\n 1\r\n );\r\n this.categories.splice(index, 1);\r\n }\r\n }\r\n\r\n addUser(user, event) {\r\n event.stopPropagation();\r\n const index = this.users.indexOf(user.id);\r\n user.checked = !user.checked;\r\n\r\n if (user.checked) {\r\n this.users.push(user.id);\r\n this.usersToShow.push(user.id);\r\n this.noMediaUserType = true;\r\n this.userFilled = true;\r\n } else {\r\n this.users.splice(index, 1);\r\n this.usersToShow.splice(index, 1);\r\n }\r\n\r\n if (this.users.length == 0) this.noMediaUserType = false;\r\n this.registerResponseModel.mediaUserModel.mediaUserTypes = this.users;\r\n }\r\n\r\n checkIfEmpty() {\r\n if (this.valForm.controls[\"email\"].value.length === 0)\r\n this.valForm.controls[\"email\"].setValidators(Validators.required);\r\n this.valForm.controls[\"email\"].setValidators(CustomValidators.email);\r\n }\r\n\r\n openAddDropdown() {\r\n this.addDropdown = !this.addDropdown;\r\n }\r\n\r\n checkPassword() {\r\n if (\r\n this.valForm.controls[\"password\"].value ===\r\n this.valForm.controls[\"confirmPassword\"].value\r\n )\r\n this.confirmError = false;\r\n }\r\n\r\n ifEmpty() {\r\n if (this.valForm.controls[\"oldPassword\"].value != \"\") {\r\n this.showPw = true;\r\n this.enterPw = false;\r\n }\r\n if (\r\n this.valForm.controls[\"password\"].value === \"\" &&\r\n this.valForm.controls[\"oldPassword\"].value != \"\"\r\n ) {\r\n this.oldPassword = true;\r\n }\r\n\r\n if (\r\n this.valForm.controls[\"oldPassword\"].value == \"\" ||\r\n this.valForm.controls[\"oldPassword\"].value == null\r\n ) {\r\n this.enterPw = false;\r\n }\r\n\r\n if (\r\n this.valForm.controls[\"oldPassword\"].value == \"\" ||\r\n this.valForm.controls[\"oldPassword\"].value == null\r\n ) {\r\n this.oldPassword = false;\r\n }\r\n }\r\n\r\n setConfirmError() {\r\n if (\r\n this.valForm.controls[\"password\"].value !==\r\n this.valForm.controls[\"confirmPassword\"].value\r\n ) {\r\n this.confirmError = true;\r\n }\r\n if (\r\n this.valForm.controls[\"password\"].value !== \"\" &&\r\n this.valForm.controls[\"oldPassword\"].value != \"\"\r\n ) {\r\n this.oldPassword = false;\r\n }\r\n if (\r\n this.valForm.controls[\"password\"].value == \"\" &&\r\n this.valForm.controls[\"oldPassword\"].value != \"\"\r\n ) {\r\n this.oldPassword = true;\r\n }\r\n if (\r\n this.valForm.controls[\"password\"].value !== \"\" &&\r\n this.valForm.controls[\"oldPassword\"].value == \"\"\r\n ) {\r\n this.enterPw = true;\r\n }\r\n\r\n // if (this.valForm.controls['password'].value === '') {\r\n // this.confirmError = false;\r\n // }\r\n }\r\n\r\n updateAccount() {\r\n this.loader++;\r\n this.mcService\r\n .update(\r\n this.isAdmin\r\n ? this.registerResponseModel.adminModel\r\n : this.registerResponseModel.mediaUserModel\r\n )\r\n .subscribe(\r\n (response) => {\r\n if (this.isAdmin) {\r\n const { firstName, lastName } =\r\n this.registerResponseModel.adminModel;\r\n const fullName = `${firstName} ${lastName}`;\r\n this.sService.setName(fullName);\r\n this.registerResponseModel.adminModel.fullName = fullName;\r\n localStorage.setItem(\r\n \"User\",\r\n JSON.stringify({ user: this.registerResponseModel.adminModel })\r\n );\r\n } else {\r\n const { firstName, lastName } =\r\n this.registerResponseModel.mediaUserModel;\r\n const fullName = `${firstName} ${lastName}`;\r\n this.sService.setName(fullName);\r\n this.registerResponseModel.mediaUserModel.fullName = fullName;\r\n localStorage.setItem(\r\n \"User\",\r\n JSON.stringify({\r\n user: this.registerResponseModel.mediaUserModel,\r\n })\r\n );\r\n }\r\n },\r\n (error) => { },\r\n () => this.loader--\r\n );\r\n }\r\n\r\n newsletterCheck() {\r\n this.registerResponseModel.mediaUserModel.receiveNewsletter =\r\n !this.registerResponseModel.mediaUserModel.receiveNewsletter;\r\n }\r\n\r\n toggleDropdown() {\r\n this.dropdown = !this.dropdown;\r\n }\r\n\r\n onAccountFormSubmit(e) {\r\n e.stopPropagation();\r\n if (\r\n this.valForm.controls[\"oldPassword\"].value == \"\" &&\r\n this.valForm.controls[\"password\"].value != \"\"\r\n ) {\r\n this.enterPw = true;\r\n }\r\n if (\r\n !this.valForm.controls[\"oldPassword\"].value &&\r\n !this.valForm.controls[\"password\"].value\r\n ) {\r\n this.enterPw = false;\r\n this.oldPassword = false;\r\n }\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n\r\n if (\r\n !this.isAdmin &&\r\n this.registerResponseModel.mediaUserModel.mediaUserTypes.length === 0\r\n ) {\r\n this.userFilled = false;\r\n } else {\r\n this.userFilled = true;\r\n }\r\n\r\n if (this.isAdmin) {\r\n this.registerResponseModel.adminModel.isPasswordSet = this.isPasswordSet;\r\n } else {\r\n this.registerResponseModel.mediaUserModel.isPasswordSet =\r\n this.isPasswordSet;\r\n }\r\n\r\n\r\n if (this.checkPasswordService.hasPasswordHardening() && this.valForm.controls[\"password\"].value && !this.checkPasswordService.checkAll(this.valForm.controls[\"password\"].value)) {\r\n this.toastr.error(\"Password does not meet the requirements\", 'Oh Snap!', ToastrConfig.error);\r\n return;\r\n }\r\n\r\n if (\r\n this.valForm.valid &&\r\n !this.oldPassword &&\r\n !this.enterPw &&\r\n this.userFilled\r\n ) {\r\n this.updateAccount();\r\n }\r\n }\r\n\r\n openDateFrom() {\r\n this.dateFromButton = !this.dateFromButton;\r\n }\r\n\r\n openDateTo() {\r\n this.dateToButton = !this.dateToButton;\r\n }\r\n\r\n changeFromDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n this.dateTo = new Date();\r\n }\r\n }\r\n }\r\n\r\n changeToDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n const dateTo: Date = new Date(this.dateTo);\r\n this.dateFrom = new Date(dateTo.getTime());\r\n }\r\n }\r\n }\r\n\r\n showFile(storyMedia) {\r\n if (\r\n this.fileType != \"all\" &&\r\n storyMedia.mediaType.toLowerCase() != this.fileType\r\n )\r\n return false;\r\n return true;\r\n }\r\n\r\n getDownloadBoxes() {\r\n this.loader++;\r\n this.downloadBoxService.getAll().subscribe(\r\n (response: any) => {\r\n this.fileHistoryModel = response;\r\n if (\r\n this.myFilesService.getMyFiles()?.length == 0 &&\r\n this.fileHistoryModel.downloadBoxes.length > 0\r\n )\r\n this.fileHistoryModel.downloadBoxes[0].opened = true;\r\n },\r\n (error) => { },\r\n () => {\r\n this.loader--;\r\n }\r\n );\r\n }\r\n\r\n updateCartFiles(files) {\r\n this.loader++;\r\n this.mcService.downloadBox(files).subscribe((response) => {\r\n this.filesFromCart = response;\r\n this.cartMedias = [];\r\n this.filesFromCart.downloadBoxList.forEach((element) => {\r\n element.media.forEach((m) => {\r\n m.media.downloadLink = m.downloadLinks[0].downloadUrl;\r\n this.cartMedias.push(m.media);\r\n });\r\n });\r\n this.loader--;\r\n });\r\n }\r\n\r\n parseDate(date) {\r\n if (!(date instanceof Date)) date = new Date(date);\r\n let options: any = { year: \"numeric\", month: \"short\", day: \"numeric\" };\r\n return date.toLocaleDateString(undefined, options);\r\n }\r\n\r\n showBox(box) {\r\n let date = box.date;\r\n if (!(date instanceof Date)) date = new Date(date);\r\n const inDateRange =\r\n (!this.dateFrom || this.dateFrom < date) &&\r\n (!this.dateTo || this.dateTo > date);\r\n if (!inDateRange) return false;\r\n\r\n return box.storyMedias?.some((media) => this.showFile(media)) || false;\r\n }\r\n\r\n showCartBox(medias: any[]) {\r\n return medias?.some((media) => this.showFile(media)) || false;\r\n }\r\n\r\n downloadBox(box, isCart = false) {\r\n const component = this;\r\n console.log(box);\r\n const urls = isCart\r\n ? box.map((media) => media.downloadLink)\r\n : box.storyMedias.map((media) => media.downloadLink);\r\n const publishedMediaIds = isCart\r\n ? box.filter((media) => media.isPublished).map((media) => media.id)\r\n : box.storyMedias.filter((media) => media.isPublished).map((media) => media.id);\r\n const storyMediaIds = isCart\r\n ? box.filter((media) => !media.isPublished).map((media) => media.id)\r\n : box.storyMedias.filter((media) => !media.isPublished).map((media) => media.id);\r\n const zip = new JSZip();\r\n let count = 0;\r\n const zipFilename = \"download.zip\";\r\n\r\n if (urls.length > 1) {\r\n urls.forEach((url) => {\r\n const filename = url.split(\"/\")[8];\r\n\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n\r\n if (count === urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n\r\n if (!component.user.cmsUser) {\r\n component.addDownload(storyMediaIds, publishedMediaIds);\r\n }\r\n\r\n if (isCart) {\r\n component.downloadBoxService.createDownloadBox().subscribe((response) => {\r\n component.myFilesService.clearFiles();\r\n console.log(response);\r\n }, (error) => console.log(error));\r\n }\r\n\r\n });\r\n }\r\n });\r\n });\r\n } else {\r\n for (const x of urls) {\r\n this.http.get(x, { responseType: \"blob\" }).subscribe(\r\n (blob: Blob) => {\r\n const filename = x.split(\"/\")[8];\r\n\r\n saveAs(blob, filename);\r\n\r\n if (!component.user.cmsUser) {\r\n component.addDownload(storyMediaIds, publishedMediaIds);\r\n }\r\n\r\n\r\n if (isCart) {\r\n component.downloadBoxService.createDownloadBox().subscribe((response) => {\r\n component.myFilesService.clearFiles();\r\n console.log(response);\r\n }, (error) => console.log(error));\r\n }\r\n\r\n },\r\n (error) => console.error(error)\r\n );\r\n }\r\n }\r\n }\r\n\r\n downloadCart() {\r\n const files = this.myFilesService.getMyFiles();\r\n this.mcService.downloadBox(files).subscribe((response) => {\r\n this.filesFromCart = response;\r\n this.cartMedias = [];\r\n this.filesFromCart.downloadBoxList.forEach((element) => {\r\n element.media.forEach((m) => {\r\n m.media.downloadLink = m.downloadLinks[0].downloadUrl;\r\n this.cartMedias.push(m.media);\r\n });\r\n });\r\n this.downloadBox(this.cartMedias, true);\r\n });\r\n }\r\n\r\n addDownload(storyMediaIds, publishedMediaIds) {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n const niz = new DownloadAddToModel();\r\n niz.publishedMediaIds = publishedMediaIds;\r\n niz.storyMediaIds = storyMediaIds;\r\n niz.userId = this.user.id;\r\n niz.publishedMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download-pm\",\r\n niz.userId.toString()\r\n );\r\n });\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId.toString()\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getSavedStories() {\r\n this.savedStoryService.getAll(this.languageId).subscribe(\r\n (response: any) => {\r\n this.savedStories = response;\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n showNoResults() {\r\n if (this.activeSection == \"file-history\")\r\n return !this.fileHistoryModel?.downloadBoxes?.some((box) =>\r\n this.showBox(box)\r\n );\r\n else return this.savedStories?.stories?.length == 0;\r\n }\r\n\r\n wrongPassword: boolean = false;\r\n\r\n deleteMyAccount() {\r\n this.deleteAccountService.deleteAccount(this.passwordForDeleting).subscribe(\r\n (response) => {\r\n this.authService.logout();\r\n this.router.navigate([\"/\"]);\r\n console.log(response);\r\n },\r\n (error) => {\r\n this.wrongPassword = true;\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n dontDeleteMyAccount() {\r\n this.deleteAccount = false;\r\n this.wrongPassword = false;\r\n this.passwordForDeleting = \"\";\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n {{ language.myFiles }}\r\n
\r\n
\r\n {{ language.savedStories }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n {{ filter.text }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
0\">\r\n
\r\n
\r\n
{{ language.current }}
\r\n
\r\n {{ myFilesService.getMyFiles()?.length }} {{ language.files }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ language.download || language.downloadAll }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ parseDate(box.date) }}
\r\n
\r\n {{ box.storyMedias?.length }} {{ language.files }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ language.download || language.downloadAll }}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ language.noDownloadBoxes }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{ language.noStoriesSaved }}\r\n
\r\n
\r\n 0\">\r\n
\r\n
\r\n

{{ language.myAccount }}

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{ language.firstNameRequired }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.lastNameRequired }}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.emailNameRequired }}\r\n {{ language.invalidEmail }}\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.max50Characters }}\r\n \r\n {{ language.min4Characters }}\r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Number\r\n (0-9)\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Special\r\n Character\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Atleast\r\n 8 Character\r\n
\r\n
\r\n
\r\n X
\r\n \r\n Lowercase\r\n & Uppercase\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n {{ language.passwordsNoMatch }}\r\n
\r\n\r\n
\r\n \r\n \r\n {{ language.mustEnterFirstPassword }}\r\n {{ language.mustEnterOldPassword }}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{ language.firstNameRequired }}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.lastNameRequired }}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.emailNameRequired }}\r\n {{ language.invalidEmail }}\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.max50Characters }}\r\n \r\n {{ language.min4Characters }}\r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Number\r\n (0-9)\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Special\r\n Character\r\n
\r\n
\r\n
X\r\n
\r\n \r\n Atleast\r\n 8 Character\r\n
\r\n
\r\n
\r\n X
\r\n \r\n Lowercase\r\n & Uppercase\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n {{ language.passwordsNoMatch }}\r\n
\r\n\r\n
\r\n \r\n \r\n {{ language.mustEnterFirstPassword }}\r\n {{ language.mustEnterOldPassword }}\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n {{\r\n language.categoriesOfInterest\r\n }}\r\n
\r\n
{{ getSelectedCategoriesText() }}
\r\n
\r\n\r\n
\r\n
\r\n \r\n
{{ category.label }}
\r\n
\r\n
\r\n {{ language.done }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n {{\r\n language.languages\r\n }}\r\n
\r\n \r\n
{{ lan }}{{ isLast ? \"\" : \", \" }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{ lang.label }}
\r\n
\r\n
\r\n {{ language.done }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n Users\r\n
\r\n \r\n
{{ user }}{{ isLast ? \"\" : \", \" }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{ user.name }}
\r\n
\r\n
\r\n {{ language.done }}\r\n
\r\n
\r\n
\r\n
\r\n {{ language.mediaUserTypeRequired }}\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{ language.add }}
\r\n
\r\n
\r\n
\r\n \r\n
Facebook
\r\n
\r\n
\r\n \r\n
Twitter
\r\n
\r\n
\r\n \r\n
Linkedin
\r\n
\r\n
\r\n \r\n
Instagram
\r\n
\r\n
\r\n \r\n
Youtube
\r\n
\r\n
\r\n \r\n
WordPress
\r\n
\r\n
\r\n {{ language.done }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{ language.iWantNewsletter }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{ language.deleteAccount }}\r\n
\r\n
\r\n

Last Login Attempts

\r\n \r\n
\r\n

{{ loginAttempt.time | date : \"dd/MM/yyyy hh:mm a\" }}

\r\n {{ !loginAttempt.failed ? 'Successful' :\r\n 'Failed' }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
{{ language.deleteAccount }}
\r\n
x
\r\n
\r\n
\r\n
\r\n {{ language.deleteAccountConfirmation }}\r\n
\r\n \r\n
\r\n {{ language.incorrectPassword }}\r\n
\r\n
\r\n
{{ language.cancel }}
\r\n
{{ language.delete }}
\r\n
\r\n
\r\n
\r\n
","import { Component, HostListener, NgZone, OnInit } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { WebNewsListModel, WebNewsModel } from \"./news-model\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { SearchModel, WebSearchModel } from \"../../header/search/search-model\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { AlgoliaService } from \"../../shared/services/algolia.service\";\r\nimport { forkJoin } from \"rxjs\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-news\",\r\n templateUrl: \"./news.component.html\",\r\n styleUrls: [\"./news.component.less\"],\r\n})\r\nexport class NewsComponent implements OnInit {\r\n news: any[];\r\n grid: string;\r\n dropdown = false;\r\n loader: boolean;\r\n subcategory = false;\r\n styles = new PageStyle();\r\n user: any;\r\n showPagination = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n newsHeadlineLength: number = 10;\r\n webListResponse = new WebNewsListModel();\r\n p = 1;\r\n itemsPerPage: number = 12;\r\n shortDescriptionLength: number;\r\n language: Language;\r\n sLng: number;\r\n lazyLoadingLoader = false;\r\n maxPageMedia = 1;\r\n searchModelData = new SearchModel();\r\n callGetAllData = true;\r\n filtersVisible = false;\r\n dateToButton = false;\r\n dateFromButton = false;\r\n dateFrom: Date = null;\r\n dateTo: Date = null;\r\n storyGroups: WebNewsModel[][] = [[]];\r\n hasStoryCodes: boolean;\r\n groupedStories: any[] = [];\r\n loginPopup: boolean = false;\r\n selectedCustomCategory: any = 0;\r\n isInMarketPage = false;\r\n selectedMarket: any = 0;\r\n markets: any[] = [];\r\n isEasyJet: boolean = false;\r\n\r\n constructor(\r\n private router: Router,\r\n private mcService: McService,\r\n private languageService: LanguageService,\r\n ngZone: NgZone,\r\n private sanitizer: DomSanitizer,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private algoliaService: AlgoliaService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.hasStoryCodes = localStorage.getItem(\"hasStoryCodes\") === \"true\";\r\n }\r\n\r\n ngOnInit() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.currentUrl = window.location.href;\r\n this.loader = true;\r\n window.scrollTo(0, 0);\r\n this.user = TokenManagerService.getUser();\r\n const market = JSON.parse(localStorage.getItem(\"currentMarket\"));\r\n this.isInMarketPage = market != null && market != undefined;\r\n if (this.isInMarketPage) {\r\n this.selectedMarket = market.id;\r\n } else {\r\n this.mcService.getMarkets().subscribe((markets: any) => {\r\n this.markets = markets.filter((x) => x.name != \"All\");\r\n });\r\n }\r\n this.getSearch();\r\n if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n this.isEasyJet = true;\r\n }\r\n }\r\n\r\n public config: any = null;\r\n\r\n getSearch() {\r\n const searchConfig$ = this.mcService.getSearchConfig();\r\n const search$ = this.mcService.getSearch();\r\n\r\n forkJoin([searchConfig$, search$]).subscribe(\r\n ([searchConfigResponse, searchResponse]) => {\r\n this.config = searchConfigResponse;\r\n this.searchModelData = searchResponse as any as SearchModel;\r\n this.searchModelData.searchModel = new WebSearchModel();\r\n this.loader = false;\r\n this.searchModelData.searchModel.images = false;\r\n this.searchModelData.searchModel.video = false;\r\n this.searchModelData.searchModel.document = false;\r\n this.searchModelData.searchModel.audio = false;\r\n this.searchModelData.searchModel.media = false;\r\n this.searchModelData.searchModel.stories = true;\r\n this.getNews(this.p, true);\r\n },\r\n (error) => {\r\n this.loader = false;\r\n }\r\n );\r\n\r\n }\r\n\r\n @HostListener(\"window:scroll\", [\"$event\"])\r\n onScroll(event) {\r\n if (\r\n window.innerHeight + window.scrollY >= document.body.offsetHeight - 300 &&\r\n !this.lazyLoadingLoader\r\n ) {\r\n this.loadMore();\r\n }\r\n }\r\n\r\n loadMore() {\r\n if (this.p < this.maxPageMedia) {\r\n this.p++;\r\n this.lazyLoadingLoader = true;\r\n this.changePage(this.p);\r\n }\r\n }\r\n\r\n changeColorr(e) {\r\n e.target.style.background = this.styles.style.mainButton3HoverColor;\r\n }\r\n\r\n changeColor(e) {\r\n e.target.style.background = this.styles.style.mainButton3DefaultColor;\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.replace(\"news\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webListResponse.stories.find((x) => x.staggingStoryId == storyId)\r\n .storyTitle\r\n )\r\n );\r\n }\r\n\r\n getStyle() {\r\n this.mcService.getStyle().subscribe(\r\n (response: any) => {\r\n this.styles = response;\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n public algoliaStories = [];\r\n getNews(page, isReset = false) {\r\n if (this.sLng == 0) {\r\n this.sLng = 1;\r\n }\r\n this.loader = isReset;\r\n this.searchModelData.searchModel.page = page;\r\n if (isReset) this.searchModelData.searchModel.page = 1;\r\n this.searchModelData.searchModel.pageSize = this.itemsPerPage;\r\n this.searchModelData.searchModel.languageId = this.sLng;\r\n if (this.selectedCustomCategory != null && this.selectedCustomCategory != undefined && this.selectedCustomCategory != 0) {\r\n this.searchModelData.searchModel.customCategoryIds = [this.selectedCustomCategory];\r\n } else {\r\n this.searchModelData.searchModel.customCategoryIds = [];\r\n }\r\n this.searchModelData.searchModel.marketId = this.selectedMarket && this.selectedMarket != 0 ?\r\n parseInt(this.selectedMarket) : null;\r\n\r\n\r\n if (!this.hasStoryCodes) {\r\n let dateFrom = null;\r\n let dateTo = null;\r\n if (this.searchModelData.searchModel.dateFrom != null) {\r\n dateFrom = new Date(this.searchModelData.searchModel.dateFrom);\r\n dateFrom.setHours(0, 0, 0, 0);\r\n }\r\n\r\n if (this.searchModelData.searchModel.dateTo != null) {\r\n dateTo = new Date(this.searchModelData.searchModel.dateTo);\r\n dateTo.setHours(23, 59, 59, 999);\r\n }\r\n\r\n this.algoliaService.searchStoriesWithFilters(\r\n this.searchModelData.searchModel.searchText,\r\n this.searchModelData.searchModel.page,\r\n this.searchModelData.searchModel.subClientIds.length > 0 ? this.searchModelData.searchModel.subClientIds[0] : null,\r\n this.searchModelData.searchModel.marketId,\r\n this.searchModelData.searchModel.customCategoryIds.length > 0 ? this.searchModelData.searchModel.customCategoryIds[0] : null,\r\n dateFrom, dateTo).then((response: any) => {\r\n this.maxPageMedia = Math.ceil(response.nbHits / this.itemsPerPage);\r\n if (isReset) {\r\n this.algoliaStories = [];\r\n }\r\n\r\n this.algoliaStories = this.algoliaStories.concat(response.hits.map((s) => {\r\n return {\r\n storyTitle: s.title,\r\n category: this.algoliaService.getSuperMediaCenter() || s.customCategories ? s.mainCategories.map((c) => c.name) : s.customCategories.map((c) => c.name),\r\n publishedDate: s.storyDate,\r\n hideStoryDate: s.hideStoryDate,\r\n staggingStoryId: s.staggingStoryId,\r\n thumbUrl: s.mediaThumbUrl,\r\n shortDescription: s.shortDescription,\r\n embeddedCode: s.embeddedCode,\r\n mediaId: s.mediaId,\r\n }\r\n }));\r\n this.storyGroups = [[]];\r\n this.groupStories(this.algoliaStories);\r\n this.loader = false;\r\n this.lazyLoadingLoader = false;\r\n });\r\n\r\n } else {\r\n this.mcService.searchMcStories(this.searchModelData.searchModel, this.hasStoryCodes).subscribe(\r\n (response: any) => {\r\n if (this.hasStoryCodes && !this.searchModelData.searchModel.marketId) {\r\n this.maxPageMedia = Math.ceil(response.totalCount / this.itemsPerPage);\r\n this.webListResponse = response;\r\n\r\n if (!isReset) {\r\n this.groupedStories = this.groupedStories.concat(\r\n response.groupedStories\r\n );\r\n } else {\r\n this.groupedStories = response.groupedStories;\r\n }\r\n if (this.webListResponse.socialSharing != null) {\r\n this.socials = this.webListResponse.socialSharing;\r\n }\r\n for (const news of this.groupedStories) {\r\n for (const story of news.stories) {\r\n if (story.featuredEmbeddedCode) {\r\n story.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n }\r\n\r\n } else {\r\n this.maxPageMedia = Math.ceil(response.totalCount / this.itemsPerPage);\r\n let stories = this.webListResponse.stories;\r\n this.webListResponse = response;\r\n if (!isReset) {\r\n this.webListResponse.stories = stories.concat(\r\n this.webListResponse.stories\r\n );\r\n }\r\n if (this.webListResponse.socialSharing != null) {\r\n this.socials = this.webListResponse.socialSharing;\r\n }\r\n for (const news of this.webListResponse.stories) {\r\n if (news.featuredEmbeddedCode) {\r\n news.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n news.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.storyGroups = [[]];\r\n this.groupStories(this.webListResponse.stories);\r\n }\r\n this.loader = false;\r\n this.lazyLoadingLoader = false;\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n\r\n }\r\n\r\n groupStories(stories) {\r\n let count = 0;\r\n for (const story of stories) {\r\n if (this.storyGroups[count].length >= 4) count++;\r\n if (!this.storyGroups[count]) this.storyGroups[count] = [];\r\n this.storyGroups[count].push(story);\r\n }\r\n }\r\n\r\n setColor(e?) {\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n if (element[0]) {\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n }\r\n }, 100);\r\n }\r\n\r\n showSubCategory(news) {\r\n news.subCategory = !news.subCategory;\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.webListResponse.stories) {\r\n if (x.storyId === id) {\r\n x.shareDropdown = !x.shareDropdown;\r\n }\r\n }\r\n }\r\n\r\n readMore(id) {\r\n localStorage.setItem(\"storyId\", JSON.stringify(id));\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webListResponse.stories.find(\r\n (x) => x.staggingStoryId == id.staggingStoryId\r\n ).storyTitle\r\n ),\r\n ]);\r\n }\r\n\r\n changePage(page) {\r\n this.p = page;\r\n this.getNews(this.p);\r\n }\r\n\r\n openDateFrom() {\r\n this.dateFromButton = !this.dateFromButton;\r\n }\r\n\r\n openDateTo() {\r\n this.dateToButton = !this.dateToButton;\r\n }\r\n changeFromDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n this.dateTo = new Date();\r\n }\r\n }\r\n }\r\n\r\n changeToDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n const dateTo: Date = new Date(this.dateTo);\r\n this.dateFrom = new Date(dateTo.getTime());\r\n }\r\n }\r\n }\r\n\r\n onChangeBrand(id: number) {\r\n if (id == 0) {\r\n this.searchModelData.searchModel.subClientIds = [];\r\n let select = (document.getElementById('brandSelect'));\r\n select.value = '0';\r\n } else {\r\n this.searchModelData.searchModel.subClientIds = [id];\r\n }\r\n }\r\n\r\n clearFilters() {\r\n if (this.searchModelData.subClients.length > 0) {\r\n this.onChangeBrand(0);\r\n }\r\n this.searchModelData.searchModel.dateFrom = null;\r\n this.searchModelData.searchModel.dateTo = null;\r\n this.searchModelData.searchModel.searchText = '';\r\n this.selectedCustomCategory = 0;\r\n this.getNews(1, true);\r\n }\r\n\r\n toggleFilters() {\r\n this.filtersVisible = !this.filtersVisible;\r\n }\r\n}\r\n","
\r\n
\r\n

News

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ language.filterBy || \"FilterBy:\" }}\r\n \r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ language.applyFilters || 'Apply Filters' }}\r\n \r\n
\r\n
\r\n \r\n {{ language.clearFilters || 'Clear Filters' }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import {Output, Pipe, PipeTransform} from '@angular/core';\r\nimport {StorageService} from '../services/storage.service';\r\n\r\n@Pipe({\r\n name: 'search'\r\n})\r\nexport class SearchPipe implements PipeTransform {\r\n\r\n constructor(private sService: StorageService){\r\n\r\n }\r\n public transform(value, keys: string, term: string) {\r\n if (!term) {\r\n return value;\r\n }\r\n if((value || []).filter((item) => keys.split(',')\r\n .some(key => item.hasOwnProperty(key) && new RegExp(term, 'gi')\r\n .test(item[key]))).length === 0){\r\n this.sService.setSearch(true)\r\n }\r\n else{\r\n this.sService.setSearch(false);\r\n }\r\n return (value || []).filter((item) => keys.split(',')\r\n .some(key => item.hasOwnProperty(key) && new RegExp(term, 'gi')\r\n .test(item[key])));\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { AppComponent } from './app.component';\r\nimport { RoutesModule } from './routes/routes.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { FacebookModule } from 'ngx-facebook';\r\nimport { ToastrModule, ToastContainerModule } from 'ngx-toastr';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ResetPasswordAdminComponent } from './login/reset-password-admin/reset-password-admin.component';\r\nimport { RegisterImportedComponent } from './register-imported/register-imported.component';\r\nimport { ErrorService } from \"./shared/services/error-service\";\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { OutBoundLinkClickInterceptService } from \"./shared/services/outbound-link-click-intercept.service\";\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n ResetPasswordAdminComponent,\r\n RegisterImportedComponent,\r\n ],\r\n imports: [\r\n BrowserModule,\r\n RouterModule,\r\n RoutesModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ToastrModule.forRoot({\r\n positionClass: 'inline',\r\n }),\r\n ToastContainerModule,\r\n BrowserAnimationsModule,\r\n FacebookModule.forRoot(),\r\n HttpClientModule,\r\n ],\r\n providers: [ErrorService, OutBoundLinkClickInterceptService],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { LoginModel, NewPasswordModel } from \"../login/login-model\";\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ToastrConfig } from '../shared/helpers/toastr-config';\r\n\r\n@Component({\r\n selector: 'app-register-imported',\r\n templateUrl: './register-imported.component.html',\r\n styleUrls: ['./register-imported.component.less']\r\n})\r\nexport class RegisterImportedComponent implements OnInit {\r\n valForm: FormGroup;\r\n loader = false;\r\n data = new NewPasswordModel();\r\n patternPassword = /^\\S*$/;\r\n confirmError: boolean;\r\n language: Language;\r\n\r\n styles = new PageStyle();\r\n\r\n constructor(private fb: FormBuilder, private languageService: LanguageService, private toastr: ToastrService, private activatedRoute: ActivatedRoute, private authLoginService: TokenManagerService, private router: Router, private sService: StorageService, public fontsAndColorsService: FontsAndColorsService) {\r\n this.valForm = this.fb.group({\r\n 'new-password': [null, Validators.compose([Validators.required, Validators.pattern(this.patternPassword)])],\r\n 'confirmpassword': [null, Validators.required]\r\n });\r\n this.language = languageService.getLanguage();\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n const resetCode = params['code'];\r\n this.data.resetCode = resetCode;\r\n\r\n });\r\n\r\n // this.authLoginService.checkAuthentication(this.data.resetCode)\r\n // .subscribe(\r\n // (response) => {\r\n //\r\n // }, (error) => {\r\n // const toast: Toast = {\r\n // type: 'error',\r\n // title: 'Error',\r\n // body: 'Reset link has already been used.',\r\n // showCloseButton: true,\r\n // timeout: 5000,\r\n // closeHtml: '
'\r\n // };\r\n //\r\n // this.toasterService.pop(toast);\r\n // this.router.navigate(['./login']);\r\n // }\r\n // );\r\n }\r\n\r\n checkPassword() {\r\n if (this.valForm.controls['new-password'].value === this.valForm.controls['confirmpassword'].value) {\r\n this.confirmError = false;\r\n }\r\n }\r\n\r\n reset(e, data) {\r\n e.stopPropagation();\r\n\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n if (this.valForm.valid) {\r\n\r\n this.authLoginService.registerImported(data)\r\n .subscribe(\r\n (response: any) => {\r\n //\r\n this.toastr.success('User registered!', 'Well done!', ToastrConfig.success);\r\n // this.router.navigate(['/login']);\r\n },\r\n (error) => {\r\n const body = JSON.parse(error._body);\r\n this.toastr.error(body.message, 'Error', ToastrConfig.error);\r\n //\r\n }\r\n );\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n

Register DNA 3 User

\r\n
\r\n
\r\n \r\n \r\n \r\n New password is required\r\n \r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n \r\n {{ language.passwordsNoMatch }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { AboutService } from './about-us.service';\r\nimport { AboutUsModel } from './about-us.model';\r\nimport { Meta } from '@angular/platform-browser';\r\nimport { McService } from '../../shared/services/mc-service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { PageStyle } from '../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../shared/services/fonts-and-colors.service';\r\nimport { MetaModel } from '../../models/meta/meta';\r\nimport { LanguageService } from '../../shared/services/language.service';\r\nimport { Language } from '../../models/language/language.model';\r\nimport { BrandsManageModel, BrandsModel } from '../brands/brands-model';\r\n\r\n@Component({\r\n selector: 'app-about-us',\r\n templateUrl: './about-us.component.html',\r\n styleUrls: ['./about-us.component.less'],\r\n providers: [AboutService]\r\n})\r\nexport class AboutUsComponent implements OnInit {\r\n about = new AboutUsModel();\r\n loader: boolean;\r\n styles = new PageStyle();\r\n metadatas: MetaModel;\r\n language: Language;\r\n brandsResponse = new BrandsModel();\r\n brands: BrandsManageModel[] = [];\r\n\r\n constructor(private AboutService: AboutService, private languageService: LanguageService, private meta: Meta, private titleService: Title, private router: Router,\r\n private mcService: McService, private fontsAndColorsService: FontsAndColorsService) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n\r\n }\r\n\r\n ngOnInit() {\r\n window.scrollTo(0, 0);\r\n this.getAbout();\r\n this.getBrands();\r\n }\r\n\r\n getAbout() {\r\n this.loader = true;\r\n this.AboutService.mediaCenterWebAboutUs()\r\n\r\n .subscribe((response: any) => {\r\n this.about = response;\r\n \r\n this.loader = false;\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n\r\n\r\n getBrands() {\r\n this.loader = true;\r\n this.mcService.getBrands()\r\n .subscribe((response: any) => {\r\n this.brandsResponse = response;\r\n // if (this.brandsResponse.mustRegisterToAccess && localStorage.getItem('Token') == null) {\r\n // sessionStorage.setItem('redirectUrl', '/' + window.location.pathname);\r\n // this.router.navigateByUrl('/sign-in');\r\n // }\r\n this.brands = response.clients;\r\n this.loader = false;\r\n if (this.brandsResponse.customCategories && this.brandsResponse.customCategories.length > 0)\r\n this.brandsResponse.customCategories.unshift({ id: 0, parentId: 0, label: 'All' });\r\n if (this.brandsResponse.mainCategories && this.brandsResponse.mainCategories.length > 0)\r\n this.brandsResponse.mainCategories.unshift({ id: 0, parentId: 0, label: 'All' });\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n \"About\r\n
\r\n

{{about.aboutUsH1Text}}

\r\n

{{about.aboutUsH2Text}}

\r\n

{{about.aboutUsH2Text}}

\r\n
\r\n
\r\n
\r\n
\r\n\r\n

\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

\r\n
\r\n {{about.aboutUsSignature}}\r\n
\r\n
\r\n
\r\n \r\n
","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs\";\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpRequestService } from \"./http-request.service\";\r\nimport { MyFilesService } from \"./my-files.service\";\r\n\r\n@Injectable()\r\nexport class DownloadBoxService {\r\n private createBoxUrl = environment.apiUrl + '/DownloadBox/Create';\r\n private getAllUrl = environment.apiUrl + '/DownloadBox/GetAll';\r\n\r\n constructor(private http: HttpRequestService, private myFiles: MyFilesService) { }\r\n\r\n createDownloadBox() {\r\n const box = this.myFiles.getMyFiles();\r\n return this.http.post(this.createBoxUrl, box);\r\n }\r\n\r\n getAll(){\r\n return this.http.get(this.getAllUrl);\r\n }\r\n}\r\n","export class BrandsModel {\r\n public customCategories: LookupModel[];\r\n public mainCategories: LookupModel[];\r\n public clients: BrandsManageModel[];\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n public mcType: any;\r\n}\r\n\r\nexport class LookupModel {\r\n public parentId: number;\r\n public id: number;\r\n public label: string;\r\n}\r\n\r\nexport class BrandsManageModel {\r\n public logoUrl: string;\r\n public mediaCenterUrl: string;\r\n public name: string;\r\n public customCategories: LookupModel[];\r\n public mainCategories: LookupModel[];\r\n public brandHovered: boolean;\r\n}\r\n","import { Component, Input, OnInit } from \"@angular/core\";\r\nimport { LatestStoriesModel } from \"../../homepage/home-model\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-news-group\",\r\n templateUrl: \"./news-group.component.html\",\r\n styleUrls: [\"./news-group.component.less\"],\r\n})\r\nexport class NewsGroupComponent implements OnInit {\r\n @Input() group: LatestStoriesModel[];\r\n @Input() config: any;\r\n @Input() mirrored: boolean;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {}\r\n}\r\n","
\r\n
\r\n 0\" [story]=\"group[0]\" [config]=\"config\"\r\n [customClasses]=\"'two-thirds'\">\r\n 3\" [story]=\"group[3]\" [config]=\"config\"\r\n [customClasses]=\"'one-third'\">\r\n
\r\n
\r\n 1\" [story]=\"group[1]\" [config]=\"config\"\r\n [customClasses]=\"'one-half'\">\r\n 2\" [story]=\"group[2]\" [config]=\"config\"\r\n [customClasses]=\"'one-half'\">\r\n
\r\n
","import { Component, EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\r\nimport { PageStyle } from '../../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../services/fonts-and-colors.service';\r\nimport { environment } from \"../../../../environments/environment\";\r\n\r\n@Component({\r\n selector: 'app-embedded-share',\r\n templateUrl: './embedded-share.component.html',\r\n styleUrls: ['./embedded-share.component.less']\r\n})\r\nexport class EmbeddedShareComponent implements OnInit {\r\n @Input() embeddedPopup: boolean;\r\n @Input() title: string;\r\n @Input() mediaId: string;\r\n @Input() isPublished: boolean = false;\r\n @Input() popupType: string = '';\r\n @Output() embeddClose = new EventEmitter();\r\n\r\n styles = new PageStyle();\r\n embeddedLink: string;\r\n isUrlCopied: boolean;\r\n\r\n constructor(private fontsAndColorsService: FontsAndColorsService) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n }\r\n\r\n @HostListener('document:keyup', ['$event'])\r\n handleKeyboardEvent(event: KeyboardEvent) {\r\n if (event.keyCode === 27) {\r\n\r\n // this.closeEmbeddedPopup();\r\n }\r\n }\r\n\r\n closeEmbeddedPopup() {\r\n this.embeddClose.emit(false);\r\n }\r\n\r\n ngOnInit() {\r\n const headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n\r\n this.embeddedLink = '
';\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","export class LayoutModel {\r\n public clientAltLogo: string;\r\n public clientLogo: string;\r\n public headerLinks: HeaderLinksModel[];\r\n public footerLinks: FooterLinksModel[];\r\n public hasBrands: boolean;\r\n public loginWithFacebook: boolean;\r\n public loginWithTwitter: boolean;\r\n public disableRegistration: boolean;\r\n public languages: any[];\r\n public cookieNotice: string;\r\n public defaultLanguageId: number;\r\n public showFooterSocialLinks: boolean;\r\n public showHeaderSocialLinks: boolean;\r\n public socialLinkJson: string;\r\n public socialLinks: string;\r\n public footerText: string;\r\n\r\n constructor() { }\r\n}\r\n\r\nexport class HeaderLinksModel {\r\n public link: string;\r\n public url: string;\r\n\r\n //added new properties\r\n public active: boolean;\r\n\r\n constructor() { }\r\n}\r\n\r\nexport class FooterLinksModel {\r\n public link: string;\r\n public url: string;\r\n\r\n //added new properties\r\n public active: boolean;\r\n}\r\n\r\n","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;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"crnd\";","import {Component, OnInit} from '@angular/core';\r\nimport {McService} from '../shared/services/mc-service';\r\nimport {TestimonialsViewModel} from './testimonials-model';\r\nimport {Router} from '@angular/router';\r\nimport {LanguageService} from '../shared/services/language.service';\r\nimport {Language} from '../models/language/language.model';\r\nimport {PageStyle} from \"../models/style/style.model\";\r\nimport {FontsAndColorsService} from \"../shared/services/fonts-and-colors.service\";\r\n@Component({\r\n selector: 'app-testimonials',\r\n templateUrl: './testimonials.component.html',\r\n styleUrls: ['./testimonials.component.less']\r\n})\r\nexport class TestimonialsComponent implements OnInit {\r\n loader: boolean;\r\n language: Language;\r\n styles = new PageStyle();\r\n\r\n testimonialsResponse = new TestimonialsViewModel();\r\n\r\n constructor(private mcService: McService, private languageService:LanguageService, public fontsAndColorsService: FontsAndColorsService, private router: Router) {\r\n this.language = languageService.getLanguage();\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getTestimonials();\r\n this.loader = true;\r\n\r\n }\r\n\r\n getTestimonials(){\r\n this.mcService.getTestimonials()\r\n .subscribe((response: any) => {\r\n this.testimonialsResponse = response;\r\n // if (this.testimonialsResponse.mustRegisterToAccess && localStorage.getItem('Token') == null) {\r\n // sessionStorage.setItem('redirectUrl', '/' + window.location.pathname);\r\n // this.router.navigateByUrl('/sign-in');\r\n // }\r\n this.loader = false;\r\n },\r\n (error) =>\r\n console.log(error));\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{language.testimonials}}

\r\n
\r\n
\r\n
\r\n
\r\n \"Profile\r\n

\r\n {{testimonial.name}}

\r\n
\r\n \"Company\r\n
\r\n
\r\n

{{(testimonial.text?.length>220)? (testimonial.text | slice:0:220)+'...':(testimonial.text)}}

\r\n
{{testimonial.date | date:\r\n 'dd MMM yyyy'}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","export class DownloadModel {\r\n public downloadBoxList: DownloadBoxModel[];\r\n public mustRegisterToDownload;\r\n public mustRegisterToAccess;\r\n public hideCounters: boolean;\r\n}\r\n\r\nexport class DownloadBoxModel {\r\n public media: MediaDetailModel[];\r\n public storyTitle: string;\r\n}\r\n\r\nexport class deleteModel {\r\n public id: number;\r\n public url: string;\r\n}\r\n\r\nexport class MediaDetailModel {\r\n public media: WebManageMediaModel;\r\n public downloadLinks: DownloadMediaModel[];\r\n public storyId: number;\r\n public alsoIn: boolean;\r\n public alsoInTitle: string;\r\n public alsoInShortDescription: string;\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n}\r\n\r\nexport class WebManageMediaModel {\r\n public id: number;\r\n public thumbUrl: string;\r\n public fullHDUrl: string;\r\n public name: string;\r\n public mediaType: string;\r\n public views: number;\r\n public downloads: number;\r\n public shared: number;\r\n public downloadLink: string;\r\n public lastDownloads: string[];\r\n public mediaLenght: number;\r\n\r\n //added new properties\r\n public checked: boolean;\r\n public addedToCart: boolean;\r\n public mediaDropdown: boolean;\r\n public shareDropdown: boolean;\r\n public shares?: number;\r\n public shareUrl?: string;\r\n public shareTitle?: string;\r\n public shareShortDescription?: string;\r\n\r\n public mediaLengthMin: number;\r\n public mediaLengthSec: number;\r\n public isPublished: boolean;\r\n\r\n // constructor(id: number, thumbUrl: string, name: string, mediaType: string, views: number, downloads: number, shared: number, downloadLink: string){\r\n // this.id = id;\r\n // this.thumbUrl = thumbUrl;\r\n // this.name = name;\r\n // this.mediaType = mediaType;\r\n // this.views = views;\r\n // this.downloads = downloads;\r\n // this.shared = shared;\r\n // this.downloadLink = downloadLink;\r\n // }\r\n\r\n}\r\n\r\nexport class DownloadMediaModel {\r\n public label: string;\r\n public downloadUrl: string;\r\n public isOriginal: string;\r\n\r\n // added properties\r\n public checked: boolean;\r\n public downloadActive: boolean;\r\n}\r\n","import { Component, Input } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { LatestStoriesModel } from \"../../../routes/homepage/home-model\";\r\nimport { WebNewsModel } from \"../../../routes/news/news-model\";\r\nimport { ButtonsHelper } from \"../../helpers/buttons-helper\";\r\nimport { UrlHelper } from \"../../helpers/url-helper\";\r\nimport { FontsAndColorsService } from \"../../services/fonts-and-colors.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../../services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../services/language.service\";\r\nimport { SavedStoryService } from \"../../services/saved-story.service\";\r\nimport { TokenManagerService } from \"../../services/token-manager.service\";\r\nimport { WebpHelperService } from \"../../services/webp-helper.service\";\r\n\r\n@Component({\r\n selector: \"app-story-preview\",\r\n templateUrl: \"./story-preview.component.html\",\r\n styleUrls: [\"./story-preview.component.less\"],\r\n})\r\nexport class StoryPreviewComponent {\r\n @Input() story: LatestStoriesModel | WebNewsModel;\r\n @Input() config: any;\r\n @Input() gridClass: any = [];\r\n @Input() index: any = 0;\r\n @Input() grid: any = \"\";\r\n @Input() customClasses: string;\r\n @Input() template: number;\r\n\r\n additionalClasses: any = [];\r\n styles = new PageStyle();\r\n language: Language;\r\n user: any;\r\n newsHeadlineLength: number = 120;\r\n buttonsHelper = ButtonsHelper;\r\n currentUrl: string;\r\n showCounters = false;\r\n showCategory = true;\r\n\r\n constructor(\r\n private router: Router,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private languageService: LanguageService,\r\n private savedStoryService: SavedStoryService,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.showCategory = localStorage.getItem(\"hideCategories\") != \"1\";\r\n this.user = TokenManagerService.getUser();\r\n this.currentUrl = window.location.href;\r\n this.drawGrid();\r\n }\r\n\r\n ngOnChanges() {\r\n this.drawGrid();\r\n }\r\n\r\n getSource(story: LatestStoriesModel | WebNewsModel) {\r\n if (story.fullHDUrl) return story.fullHDUrl;\r\n return story.thumbUrl;\r\n }\r\n\r\n drawGrid() {\r\n this.additionalClasses = this.gridClass;\r\n if (this.grid == \"Columns2\" && (this.index + 1) % 2 == 0) {\r\n this.additionalClasses[\"no-margin-right\"] = true;\r\n }\r\n if (this.grid == \"Columns3\" && (this.index + 1) % 3 == 0) {\r\n this.additionalClasses[\"no-margin-right\"] = true;\r\n }\r\n if (this.grid == \"Columns4\" && (this.index + 1) % 4 == 0) {\r\n this.additionalClasses[\"no-margin-right\"] = true;\r\n }\r\n }\r\n\r\n readMore() {\r\n window.scrollTo(0, 0);\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"view\",\r\n \"story/\" + this.story.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.router.navigate([\r\n `/story/${this.story.staggingStoryId}/${UrlHelper.getUrlTitle(\r\n this.story.storyTitle\r\n )}`,\r\n ]);\r\n if (window.location.pathname === \"/\") {\r\n this.googleAnalytics.emitArticleEvent(\r\n \"homepage\",\r\n this.story.staggingStoryId\r\n );\r\n }\r\n this.googleAnalytics.emitReadMoreEvent(\r\n \"grid\",\r\n this.story.storyTitle,\r\n `/story/${this.story.staggingStoryId}/${UrlHelper.getUrlTitle(\r\n this.story.storyTitle\r\n )}`\r\n );\r\n }\r\n\r\n getStoryUrl() {\r\n return `/story/${this.story.staggingStoryId}/${UrlHelper.getUrlTitle(\r\n this.story.storyTitle\r\n )}`;\r\n }\r\n\r\n showSubCategory(news) {\r\n news.subCategory = !news.subCategory;\r\n }\r\n\r\n multupleFileTypes() {\r\n let array = [\r\n this.story.images,\r\n this.story.video,\r\n this.story.document,\r\n this.story.audio,\r\n ];\r\n return array.filter((a) => a != 0).length > 1;\r\n }\r\n\r\n toggleSavedStory(storyId) {\r\n if (this.inSavedStories(storyId))\r\n this.savedStoryService\r\n .remove(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n else\r\n this.savedStoryService\r\n .add(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n inSavedStories(storyId) {\r\n return this.savedStoryService.inSavedStories(storyId);\r\n }\r\n\r\n titleMaxLength: number = 149;\r\n\r\n shortenTitle(title) {\r\n if (title == null || title == undefined) {\r\n return \"\";\r\n }\r\n\r\n if (title.length > this.titleMaxLength) {\r\n return title.substring(0, this.titleMaxLength) + \"...\";\r\n }\r\n\r\n return title;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n \"Story\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ story.category[0] }}\r\n
\r\n
\r\n
\r\n
\r\n {{ story.views }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ language.addStoryToFav }}\r\n
\r\n\r\n 0\" [image]=\"story.thumbUrl\" [title]=\"story.storyTitle\"\r\n [description]=\"story.shortDescription\" [big]=\"false\" [horizontal]=\"true\" [shared]=\"story.shared\"\r\n [sbUrl]=\"getStoryUrl()\" [staggingStoryId]=\"story.staggingStoryId\" [mediaId]=\"story.mediaId\"\r\n [storyId]=\"story.storyId\" [socials]=\"config.socialSharing\">\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{ story.publishedDate | date : \"dd MMMM yyyy\" }}\r\n
\r\n
\r\n {{ shortenTitle(story.storyTitle) }}\r\n
\r\n
\r\n {{ story.publishedDate | date : \"dd MMMM yyyy\" }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{ language.readMore }}\r\n \r\n\r\n \r\n \r\n\r\n 0\" [image]=\"story.thumbUrl\" [title]=\"story.storyTitle\"\r\n [description]=\"story.shortDescription\" [big]=\"false\" [vertical]=\"true\" [shared]=\"story.shared\"\r\n [sbUrl]=\"getStoryUrl()\" [staggingStoryId]=\"story.staggingStoryId\" [mediaId]=\"story.mediaId\"\r\n [storyId]=\"story.storyId\" [socials]=\"config.socialSharing\">\r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from \"@angular/core\";\r\nimport { McService } from \"../../services/mc-service\";\r\nimport { GoogleAnalyticsEventsService } from \"../../services/google-analytics-events.service\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { LanguageService } from \"../../services/language.service\";\r\nimport { WebNewsDetailsMediaModel } from \"../../../routes/news/news-model\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { TokenManagerService } from \"../../services/token-manager.service\";\r\nimport { DownloadAddToModel } from \"../../../routes/media/media-model\";\r\nimport { ButtonsHelper } from \"../../helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../../services/my-files.service\";\r\nimport { WebpHelperService } from \"../../services/webp-helper.service\";\r\nimport { Router } from \"@angular/router\";\r\nimport { MyFilesModel } from \"../../services/my-files-model\";\r\n@Component({\r\n selector: \"app-media-file\",\r\n templateUrl: \"./media-file.component.html\",\r\n styleUrls: [\"./media-file.component.less\"],\r\n})\r\nexport class MediaFileComponent implements OnInit {\r\n @Input() media: WebNewsDetailsMediaModel;\r\n @Input() config: any;\r\n @Input() gridClass: any = {};\r\n @Input() index: any = 0;\r\n @Input() grid: any = \"\";\r\n @Input() fullWidth: any = false;\r\n @Input() showExternally: any = false;\r\n @Input() full: boolean = false;\r\n @Input() newsDetail: boolean = false;\r\n @Input() customClasses: string;\r\n @Input() template: number;\r\n @Output() dataEvent = new EventEmitter();\r\n\r\n additionalClasses: any = [];\r\n styles = new PageStyle();\r\n language: Language;\r\n popup: boolean;\r\n autoplay: boolean;\r\n loader = false;\r\n loginPopup = false;\r\n downloading = false;\r\n mediaId: number;\r\n disabledButton: boolean;\r\n user: any;\r\n buttonsHelper = ButtonsHelper;\r\n cartItems: MyFilesModel = new MyFilesModel([], []);\r\n shareUrl: string;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private mcService: McService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private myFilesService: MyFilesService,\r\n private languageService: LanguageService,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n ngOnInit() {\r\n this.user = TokenManagerService.getUser();\r\n this.cartItems = this.myFilesService.getMyFiles();\r\n if (this.cartItems && this.cartItems.isInMyFiles(this.media.id, this.media.isPublished)) {\r\n this.media.addedToCart = true;\r\n } else {\r\n this.media.addedToCart = false;\r\n }\r\n this.isPublished = this.media.isPublished;\r\n //current url (not the route http://localhost:4200/media-library => http://localhost:4200/)+ media.relativeShareUrl\r\n this.shareUrl = window.location.origin + this.media.relativeShareUrl;\r\n this.drawGrid();\r\n }\r\n\r\n ngOnChanges() {\r\n this.drawGrid();\r\n }\r\n\r\n getSource(media: WebNewsDetailsMediaModel) {\r\n if (media.fullHDUrl) return media.fullHDUrl;\r\n return media.thumbUrl;\r\n }\r\n\r\n drawGrid() {\r\n this.additionalClasses = this.gridClass;\r\n this.additionalClasses[\"media-box\"] = true;\r\n }\r\n\r\n isPublished: boolean = false;\r\n\r\n openMediaPopup(autoplay = false) {\r\n this.autoplay = autoplay;\r\n this.mediaId = this.media.id;\r\n this.isPublished = this.media.isPublished;\r\n this.popup = true;\r\n this.media.views++;\r\n\r\n if (this.showExternally) {\r\n console.log(this.media);\r\n this.dataEvent.emit({ mediaId: this.mediaId, isPublished: this.isPublished });\r\n }\r\n }\r\n\r\n handleImageError(event: Event) {\r\n const imgElement = event.target as HTMLImageElement;\r\n imgElement.src = \"/src/assets/files/placeholder.jpg\";\r\n }\r\n\r\n onLogin(state) {\r\n if (state) {\r\n this.download();\r\n }\r\n }\r\n\r\n download() {\r\n if (\r\n this.config.mustRegisterToDownload &&\r\n !this.config.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n let component = this;\r\n component.disabledButton = true;\r\n this.downloading = true;\r\n this.http\r\n .get(this.media.downloadLink, { responseType: \"blob\" })\r\n .toPromise()\r\n .then(\r\n (blob: Blob) => {\r\n let filename = this.media.name;\r\n saveAs(blob, filename);\r\n this.downloading = false;\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n this.googleAnalytics.emitEvent(\r\n \"FileDownload\",\r\n \"FileDownload\",\r\n \"Download\",\r\n filename + \" | \" + this.config.storyTitle\r\n );\r\n },\r\n (error) => {\r\n console.error(error);\r\n }\r\n );\r\n }\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n let niz = new DownloadAddToModel();\r\n if (this.isPublished) {\r\n niz.publishedMediaIds = [this.media.id];\r\n niz.storyMediaIds = [];\r\n niz.publishedMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download-pm\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n } else {\r\n niz.storyMediaIds = [this.media.id];\r\n niz.publishedMediaIds = [];\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n }\r\n\r\n niz.userId = this.user.id;\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n console.error(error);\r\n }\r\n );\r\n }\r\n\r\n sendToCart() {\r\n if (\r\n this.config.mustRegisterToDownload &&\r\n !this.config.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n this.loginPopup = true;\r\n return;\r\n }\r\n console.log(this.media);\r\n if (!!this.cartItems && !this.cartItems.isInMyFiles(this.media.id, this.media.isPublished)) {\r\n this.media.addedToCart = true;\r\n this.media.checked = false;\r\n this.myFilesService.pushMyFiles(this.media.id, this.media.isPublished);\r\n this.cartItems = this.myFilesService.getMyFiles();\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \"Story\r\n \r\n
\r\n
\r\n \"{{\r\n
\r\n
\r\n
\r\n
\r\n \"{{\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ language.expand }}\r\n
\r\n\r\n
\r\n \r\n {{ language.addToFiles }}\r\n
\r\n\r\n
\r\n \r\n {{ language.download }}\r\n \r\n
\r\n\r\n 0 &&\r\n (config?.storyTitle || media.name) && media.relativeShareUrl != null\r\n \" [image]=\"media.thumbUrl\" [big]=\"false\" [vertical]=\"customClasses == 'news-detail-media-file'\"\r\n [shared]=\"media.shares\" [sbUrl]=\"shareUrl\" [title]=\"config?.storyTitle || media.name\"\r\n [description]=\"config?.shortDescription\" [mediaId]=\"media.id\" [webNewsDetailsResponse]=\"config\"\r\n [isMediaShare]=\"true\" [isMediaShareVertical]=\"true\" [socials]=\"config.socialSharing\"\r\n [isPublished]=\"isPublished\">\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{ media.name }}\r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n {{ language.addToMyFiles }}\r\n {{ language.addedToMyFiles }}\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n

\r\n {{media.name}}\r\n

\r\n

{{media.mediaType}}

\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n HostListener,\r\n ElementRef,\r\n AfterViewInit,\r\n ViewChild,\r\n OnChanges,\r\n SimpleChanges,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport {\r\n AlgoliaNewsRecords,\r\n AlgoliaMediaRecords,\r\n ClientLookupModel,\r\n SearchModel,\r\n SearchResultModel,\r\n WebSearchModel,\r\n} from \"./search-model\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { LayoutModel } from \"../../layout/layout-model\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { timeStamp } from \"console\";\r\nimport { AlgoliaService } from \"../../shared/services/algolia.service\";\r\n\r\n@Component({\r\n selector: \"app-search\",\r\n templateUrl: \"./search.component.html\",\r\n styleUrls: [\"./search.component.less\"],\r\n})\r\nexport class SearchComponent implements OnInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n @Input() search: boolean;\r\n @Input() template: number;\r\n @Output() searchChange = new EventEmitter();\r\n @Output() openDateFromEmitter = new EventEmitter();\r\n storiesAndMedia: boolean;\r\n stories: boolean;\r\n mediaId: number;\r\n popup: boolean;\r\n media: boolean;\r\n loader: boolean;\r\n language: Language;\r\n showingResults: boolean;\r\n\r\n dateFrom: Date = null;\r\n dateTo: Date = null;\r\n\r\n dateFromButton: boolean;\r\n dateToButton: boolean;\r\n\r\n result: any;\r\n styles = new PageStyle();\r\n headerFooter: any;\r\n searchModelData = new SearchModel();\r\n searchResultStories = new SearchResultModel();\r\n searchResultMedia = new SearchResultModel();\r\n checked = false;\r\n checkedb = false;\r\n searchFrom = \"stories\";\r\n\r\n constructor(\r\n private algoliaService: AlgoliaService,\r\n private mcService: McService,\r\n private languageService: LanguageService,\r\n private router: Router,\r\n private storageService: StorageService,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private elRef: ElementRef,\r\n private sanitizer: DomSanitizer,\r\n private googleAnalytics: GoogleAnalyticsEventsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n router.events.subscribe((val: any) => {\r\n if (val?.urlAfterRedirects) {\r\n this.closeSearch();\r\n }\r\n });\r\n }\r\n\r\n isPublished: boolean;\r\n receiveDataFromChild(event) {\r\n this.popup = true;\r\n this.mediaId = event.mediaId;\r\n this.isPublished = event.isPublished;\r\n }\r\n\r\n openPopup(id: number) {\r\n this.popup = true;\r\n this.mediaId = id;\r\n }\r\n\r\n @HostListener(\"document:keyup\", [\"$event\"])\r\n handleKeyboardEvent(event: KeyboardEvent) {\r\n if (this.search) {\r\n if (event.keyCode === 27) {\r\n this.closeSearch();\r\n }\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.headerFooter = JSON.parse(localStorage.getItem(\"headerfooter\"));\r\n this.getSearch();\r\n\r\n this.mcService.searchMcStories(this.searchModelData.searchModel).subscribe(\r\n (response: any) => {\r\n this.searchResultStories = response;\r\n },\r\n (error) => {\r\n this.searchModelData.searchModel.stories = false;\r\n }\r\n );\r\n this.mcService.searchMcMedia(this.searchModelData.searchModel).subscribe(\r\n (response: any) => {\r\n this.searchResultMedia = response;\r\n },\r\n (error) => {\r\n this.searchModelData.searchModel.media = false;\r\n }\r\n );\r\n }\r\n\r\n getSearch() {\r\n this.mcService.getSearch().subscribe(\r\n (response: any) => {\r\n this.searchModelData = response;\r\n this.searchModelData.searchModel = new WebSearchModel();\r\n this.searchModelData.searchModel.pageSize = 12;\r\n if (localStorage.getItem(\"searchModel\") !== null) {\r\n this.searchModelData.searchModel = JSON.parse(\r\n localStorage.getItem(\"searchModel\")\r\n );\r\n if (this.searchModelData.subClients == null)\r\n this.searchModelData.subClients = [];\r\n if (this.searchModelData.searchModel.stories)\r\n this.searchFrom = \"stories\";\r\n if (this.searchModelData.searchModel.media) this.searchFrom = \"media\";\r\n this.searchModelData.subClients.forEach(\r\n (x) =>\r\n (x.checked =\r\n this.searchModelData.searchModel.subClientIds.indexOf(x.id) >\r\n -1)\r\n );\r\n } else {\r\n this.setSearchFrom(this.searchFrom);\r\n }\r\n this.loader = false;\r\n },\r\n (error) => {\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n\r\n wipeSearch() {\r\n this.searchModelData.searchModel.searchText = \"\";\r\n this.setSearchString();\r\n }\r\n\r\n setSearchString() {\r\n this.clearResults();\r\n let searchString = this.searchModelData.searchModel.searchText;\r\n if (searchString.length > 2) {\r\n this.showingResults = true;\r\n this.loader = true;\r\n const delayDebounceFn = setTimeout(() => {\r\n this.searchMc();\r\n }, 250);\r\n return () => clearTimeout(delayDebounceFn);\r\n } else {\r\n this.showingResults = false;\r\n }\r\n }\r\n\r\n handleClick(e) {\r\n if (\r\n e.target.classList.contains(\"search-box\") ||\r\n e.target.classList.contains(\"all-results\")\r\n ) {\r\n this.closeSearch();\r\n }\r\n }\r\n\r\n showStories() {\r\n if (!this.searchModelData.searchModel.stories || true) {\r\n this.searchModelData.searchModel.stories = true;\r\n this.searchModelData.searchModel.media = false;\r\n this.storageService.setSearchModel(this.searchModelData.searchModel);\r\n if (this.searchResultStories.stories?.length == 0) this.searchMc();\r\n }\r\n }\r\n\r\n showMedia() {\r\n if (!this.searchModelData.searchModel.media || true) {\r\n this.searchModelData.searchModel.stories = false;\r\n this.searchModelData.searchModel.media = true;\r\n this.storageService.setSearchModel(this.searchModelData.searchModel);\r\n if (this.searchResultMedia.media?.length == 0) this.searchMc();\r\n }\r\n }\r\n\r\n async searchMc() {\r\n this.loader = true;\r\n localStorage.setItem(\r\n \"searchModel\",\r\n JSON.stringify(this.searchModelData.searchModel)\r\n );\r\n this.searchModelData.searchModel.page = 1;\r\n if (this.searchModelData.searchModel.stories) {\r\n this.searchModelData.searchModel.languageId = Number(\r\n localStorage.getItem(\"lng\")\r\n );\r\n const response = await this.algoliaService.searchStories(\r\n this.searchModelData.searchModel.searchText,\r\n this.searchModelData.searchModel.page\r\n );\r\n const hits: AlgoliaNewsRecords[] = response.hits;\r\n this.searchResultStories.stories = hits\r\n .map((hit) => AlgoliaNewsRecords.convertToWebNewsModel(hit))\r\n .filter((story) => story?.fullHDUrl || story?.thumbUrl);\r\n this.searchResultStories.maxPages = response.nbPages;\r\n\r\n for (const result of this.searchResultStories.stories) {\r\n if (result.featuredEmbeddedCode) {\r\n result.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n result.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.checkMustBeRegistered(\r\n this.searchResultStories?.mustRegisterToAccess\r\n );\r\n this.storageService.setSearchModel(this.searchModelData.searchModel);\r\n }\r\n\r\n if (this.searchModelData.searchModel.media) {\r\n const response = await this.algoliaService.searchMedia(\r\n this.searchModelData.searchModel.searchText,\r\n this.searchModelData.searchModel.page\r\n );\r\n const hits: AlgoliaMediaRecords[] = response.hits;\r\n this.searchResultMedia.media = hits.map((hit) =>\r\n AlgoliaMediaRecords.convertToWebManageMediaModel(hit)\r\n );\r\n this.searchResultMedia.maxPages = response.nbPages;\r\n this.checkMustBeRegistered(this.searchResultMedia?.mustRegisterToAccess);\r\n this.storageService.setSearchModel(this.searchModelData.searchModel);\r\n }\r\n }\r\n\r\n checkMustBeRegistered(mustRegisterToAccess) {\r\n if (\r\n mustRegisterToAccess === true &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.closeSearch();\r\n this.loader = false;\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n if (this.searchModelData.searchModel.media)\r\n this.storageService.setSearchItemMedia(this.searchResultMedia);\r\n else this.storageService.setSearchItemStories(this.searchResultStories);\r\n this.loader = false;\r\n }\r\n }\r\n\r\n closeSearch() {\r\n this.searchChange.emit(false);\r\n localStorage.setItem(\r\n \"searchModel\",\r\n JSON.stringify(this.searchModelData.searchModel)\r\n );\r\n const body = document.getElementsByTagName(\"body\")[0];\r\n body.style.position = \"inherit\";\r\n }\r\n\r\n clearResults() {\r\n this.searchResultStories.stories = [];\r\n this.searchResultStories.maxPages = 0;\r\n this.storageService.setSearchItemStories(this.searchResultStories);\r\n this.searchResultMedia.media = [];\r\n this.searchResultMedia.maxPages = 0;\r\n this.storageService.setSearchItemMedia(this.searchResultMedia);\r\n }\r\n\r\n setSearchFrom(tab) {\r\n this.searchFrom = tab;\r\n this.searchModelData.searchModel.media = tab != \"stories\";\r\n this.searchModelData.searchModel.stories = tab != \"media\";\r\n if (this.searchModelData.searchModel.media) {\r\n this.searchModelData.searchModel.images = true;\r\n this.searchModelData.searchModel.video = true;\r\n this.searchModelData.searchModel.document = true;\r\n this.searchModelData.searchModel.audio = true;\r\n } else {\r\n this.searchModelData.searchModel.images = false;\r\n this.searchModelData.searchModel.video = false;\r\n this.searchModelData.searchModel.document = false;\r\n this.searchModelData.searchModel.audio = false;\r\n }\r\n }\r\n\r\n clearAll() {\r\n this.clearResults();\r\n this.setSearchFrom(\"stories\");\r\n localStorage.removeItem(\"searchModel\");\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n Stories\r\n
\r\n
\r\n Media Library\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
","import { Component, ElementRef, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { LayoutModel } from \"../layout/layout-model\";\r\nimport { ActivatedRoute, NavigationEnd, Params, Router } from \"@angular/router\";\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { McService } from \"../shared/services/mc-service\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { MetaModel } from \"../models/meta/meta\";\r\nimport { Meta, Title } from \"@angular/platform-browser\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { CommunicationService } from \"../shared/services/communication.service\";\r\nimport { ButtonsHelper } from \"../shared/helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../shared/services/my-files.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../shared/services/google-analytics-events.service\";\r\nimport { SearchComponent } from \"./search/search.component\";\r\nimport { MyFilesModel } from \"../shared/services/my-files-model\";\r\n\r\n@Component({\r\n selector: \"app-header\",\r\n templateUrl: \"./header.component.html\",\r\n styleUrls: [\"./header.component.less\"],\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n @Input() metadatas: MetaModel[];\r\n @ViewChild('appSearch') searchChild: SearchComponent;\r\n @ViewChild(\"logoFlag\") logoFlag: ElementRef;\r\n styles: PageStyle;\r\n search: boolean;\r\n mobileNav: boolean;\r\n showDropdown: boolean;\r\n showMobDropdown: boolean;\r\n loggedUserName = \"\";\r\n mustRegister: boolean;\r\n anonymousShare: boolean;\r\n cms: any;\r\n user: any;\r\n loader: boolean;\r\n loginActive = false;\r\n loginColor: any;\r\n signinActive = false;\r\n signinColor: any;\r\n logo = \"\";\r\n language: Language;\r\n mobileLanguageDropdown = false;\r\n brandsColor: any;\r\n brandsActive = false;\r\n showDropdownLng = false;\r\n activeLng = \"English\";\r\n sLng: number;\r\n fromBrandsUrl: string;\r\n biggerLogo = false;\r\n invertColors = true;\r\n socialLinkObjects: any;\r\n showMyFiles: boolean = false;\r\n buttonsHelper = ButtonsHelper;\r\n cart: MyFilesModel = new MyFilesModel([], []);\r\n loggedUserEmail: any;\r\n markets = [];\r\n\r\n invertedHeaderRoutesExact: string[] = [\"/\", \"/home\", \"/about-us\", \"story\"];\r\n invertedHeaderRoutesPartial: string[] = [\"story\"];\r\n\r\n constructor(\r\n private router: Router,\r\n private mcService: McService,\r\n private authService: TokenManagerService,\r\n private languageService: LanguageService,\r\n private titleService: Title,\r\n private meta: Meta,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private communicationsService: CommunicationService,\r\n private storageService: StorageService,\r\n private myFilesService: MyFilesService,\r\n private googleAnalytics: GoogleAnalyticsEventsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cart = myFiles;\r\n });\r\n if (this.router.url.indexOf(\"brands\") > 0) {\r\n this.brandsActive = true;\r\n this.brandsColor = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n this.checkRouteForHeader();\r\n\r\n const component = this;\r\n this.communicationsService.fromBrands.subscribe((url: string) => {\r\n if (url) {\r\n setTimeout(() => {\r\n url = url.replace(/%2F/, \"/\");\r\n url = url.replace(/%2F/, \"/\");\r\n url = url.replace(/%3A/, \":\");\r\n component.fromBrandsUrl = url;\r\n });\r\n }\r\n });\r\n\r\n this.languageService.languageId.subscribe((languageId: number) => {\r\n this.sLng = languageId;\r\n this.getLng(this.sLng);\r\n });\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.storageService.getMustRegister().subscribe((mustRegister) => {\r\n component.mustRegister = mustRegister;\r\n });\r\n this.storageService.getAnonymousShare().subscribe((anonymousShare) => {\r\n component.anonymousShare = anonymousShare;\r\n });\r\n }\r\n\r\n checkRouteForHeader() {\r\n this.checkIsInvertedHeader(this.router.url);\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.checkIsInvertedHeader(event.url);\r\n }\r\n });\r\n }\r\n\r\n checkIsInvertedHeader(route: string) {\r\n const oneExact = this.invertedHeaderRoutesExact.some((r) => r == route);\r\n const onePartial = this.invertedHeaderRoutesPartial.some(\r\n (r) => route.indexOf(r) > 0\r\n );\r\n this.invertColors = oneExact || onePartial;\r\n }\r\n\r\n currentMarket;\r\n\r\n ngOnInit() {\r\n var actualWebsite: String = window.location.origin;\r\n\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.language = this.languageService.getLanguage();\r\n\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.getLng(this.sLng);\r\n\r\n this.storageService.getName().subscribe((term) => {\r\n this.loggedUserName = term;\r\n this.showDropdown = false;\r\n this.user = TokenManagerService.getUser();\r\n this.loggedUserEmail = this.user.email;\r\n });\r\n this.user = TokenManagerService.getUser();\r\n this.loggedUserName = this.user.fullName;\r\n this.loggedUserEmail = this.user.email;\r\n\r\n this.search = false;\r\n this.mobileNav = false;\r\n\r\n this.socialLinkObjects = JSON.parse(\r\n this.layoutResponseModel.socialLinkJson\r\n );\r\n if (\r\n this.socialLinkObjects !== null &&\r\n this.socialLinkObjects !== undefined\r\n ) {\r\n this.socialLinkObjects = this.socialLinkObjects.map((o) => {\r\n o.name = o.name.toLowerCase();\r\n o.link = this.checkLinkPrefix(o.link);\r\n return o;\r\n });\r\n } else {\r\n this.socialLinkObjects = [];\r\n }\r\n this.mcService.getMarkets().subscribe((markets: any) => {\r\n this.markets = markets;\r\n //check according to current url which market is active, ignoring cases, protocol and www, query params, everything after /, just the domain\r\n let currentDomain = window.location.href.toLowerCase();\r\n currentDomain = currentDomain.replace(/(^\\w+:|^)\\/\\//, \"\");\r\n currentDomain = currentDomain.replace(/www./, \"\");\r\n currentDomain = currentDomain.replace(/\\/.*/, \"\");\r\n this.markets.forEach((market) => {\r\n let marketUrl = market.url.toLowerCase();\r\n marketUrl = marketUrl.replace(/(^\\w+:|^)\\/\\//, \"\");\r\n marketUrl = marketUrl.replace(/www./, \"\");\r\n marketUrl = marketUrl.replace(/\\/.*/, \"\");\r\n if (marketUrl === currentDomain) {\r\n this.currentMarket = market;\r\n }\r\n });\r\n });\r\n }\r\n\r\n closeMyFiles(event) {\r\n if (event.target.id !== \"myFilesNav\") this.showMyFiles = false;\r\n }\r\n\r\n openMyFiles() {\r\n this.closeNav();\r\n this.showMyFiles = true;\r\n }\r\n\r\n checkLinkPrefix(link: string) {\r\n if (link.includes(\"http://\") || link.includes(\"https://\")) {\r\n return link;\r\n } else {\r\n return `http://${link}`;\r\n }\r\n }\r\n\r\n onLoad() {\r\n const width = (this.logoFlag.nativeElement as HTMLImageElement)\r\n .naturalWidth;\r\n const height = (this.logoFlag.nativeElement as HTMLImageElement)\r\n .naturalHeight;\r\n\r\n if (width > 4 * height) {\r\n this.biggerLogo = true;\r\n } else {\r\n this.biggerLogo = false;\r\n }\r\n }\r\n\r\n getLng(languageId) {\r\n if (this.layoutResponseModel) {\r\n for (let i = 0; i < this.layoutResponseModel.languages.length; i++) {\r\n if (languageId == this.layoutResponseModel.languages[i].id) {\r\n this.activeLng = this.layoutResponseModel.languages[i].label;\r\n }\r\n if (languageId == 0) {\r\n this.activeLng = \"English\";\r\n }\r\n }\r\n }\r\n }\r\n\r\n translate(id, label) {\r\n this.loader = true;\r\n this.activeLng = label;\r\n\r\n this.languageService.setLanguageId(id);\r\n\r\n this.router.navigateByUrl(\"/home\");\r\n location.reload();\r\n }\r\n\r\n changeColor(e, color, link) {\r\n if (link && !link.active) {\r\n e.target.style.color = color;\r\n }\r\n }\r\n\r\n changeColorr(e, link) {\r\n if (link && !link.active) {\r\n e.target.style.color = this.styles.style.textLinkHoverColor;\r\n }\r\n }\r\n\r\n changeColorCustomLink(e, color) {\r\n if (!this.brandsActive) {\r\n e.target.style.color = \"#3a3a3a\";\r\n }\r\n }\r\n\r\n changeColorrCustomLink(e, link) {\r\n if (!this.brandsActive) {\r\n e.target.style.color = this.styles.style.textLinkHoverColor;\r\n }\r\n }\r\n\r\n changeColorLinkBack(e, color) {\r\n e.target.style.color = this.styles.style.textH2Color;\r\n }\r\n\r\n changeColorLink(e) {\r\n e.target.style.color = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n redirectToCms() {\r\n this.mcService.redirectToCms(this.user.cmsUser).subscribe(\r\n (response: any) => {\r\n window.open(environment.cmsUrl + response.token, \"_blank\");\r\n },\r\n (error) => {\r\n console.error(error);\r\n }\r\n );\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n this.user = TokenManagerService.getUser();\r\n this.myFilesService.setMyFiles(this.myFilesService.getFiles());\r\n this.loggedUserName = this.user.fullName;\r\n this.loggedUserEmail = this.user.email;\r\n if (this.mustRegister) {\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n }\r\n\r\n showProfile() {\r\n this.showDropdown = !this.showDropdown;\r\n }\r\n\r\n showLanguage() {\r\n this.showDropdownLng = !this.showDropdownLng;\r\n }\r\n\r\n showDropdownMarkets: boolean = false;\r\n\r\n showMarkets() {\r\n this.showDropdownMarkets = !this.showDropdownMarkets;\r\n }\r\n\r\n showMobileLanguage() {\r\n this.mobileLanguageDropdown = !this.mobileLanguageDropdown;\r\n }\r\n\r\n showMobileProfile() {\r\n this.showMobDropdown = !this.showMobDropdown;\r\n }\r\n\r\n editProfile() {\r\n this.router.navigateByUrl(\"/profile\");\r\n }\r\n\r\n reroute(url) {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.brandsActive = false;\r\n this.brandsColor = this.styles.style.textHeaderColor;\r\n const index = this.layoutResponseModel.headerLinks.indexOf(url);\r\n if (url.url.indexOf(\"http\") > -1) {\r\n window.open(url.url, \"_blank\");\r\n } else {\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.router.navigateByUrl(url.url);\r\n url.active = true;\r\n }\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n url.link\r\n );\r\n }\r\n\r\n activeLink() {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.headerLinks.forEach((x) => {\r\n if (\"/\" + x.url === \"/home\") {\r\n x.active = true;\r\n } else {\r\n x.active = false;\r\n }\r\n });\r\n }\r\n\r\n rerouteToLogin(text: string) {\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.googleAnalytics.emitEvent(\"MenuClick\", \"MenuOption\", text);\r\n }\r\n\r\n rerouteToBrands() {\r\n this.brandsActive = true;\r\n this.brandsColor = this.styles.style.mainIdentifyingColor;\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n }\r\n\r\n showSearch() {\r\n this.search = true;\r\n this.searchChild?.wipeSearch();\r\n const input = document.getElementById(\"story-search-big\");\r\n setTimeout(() => {\r\n input.focus();\r\n }, 250);\r\n const body = document.getElementsByTagName(\"body\")[0];\r\n body.style.position = \"fixed\";\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n this.language.search\r\n );\r\n }\r\n\r\n openMobileNav() {\r\n this.mobileNav = true;\r\n }\r\n\r\n closeNav() {\r\n this.mobileNav = false;\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdown = false;\r\n }\r\n }\r\n\r\n onClickOutsidee(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdownLng = false;\r\n }\r\n }\r\n\r\n onClickOutsideMarkets(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdownMarkets = false;\r\n }\r\n }\r\n\r\n goToMarket(market: any) {\r\n let url = market.url;\r\n this.loader = true;\r\n const currentProtocol = window.location.protocol;\r\n if (url.indexOf(\"http\") == -1 && url.indexOf(\"https\") == -1) {\r\n url = currentProtocol + \"//\" + url;\r\n }\r\n this.mcService.redirectToMarket().subscribe(\r\n (response: any) => {\r\n const token = response.token;\r\n window.location.href = url + '?token=' + token;\r\n },\r\n (error) => {\r\n window.location.href = url;\r\n }\r\n );\r\n }\r\n\r\n showFiles() {\r\n this.showMyFiles = !this.showMyFiles;\r\n if (this.showMyFiles)\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n this.language.myFiles || this.language.myFiles\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {{ language.searchHere }} \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n SEARCH\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {{ link.link }}\r\n
\r\n
\r\n \r\n
\r\n {{ language.brands }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ language.myFiles || language.myFiles }} ({{\r\n cart ? cart.length || 0 : 0\r\n }})\r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n {{ currentMarket == null ? 'Markets' : currentMarket.marketName }}\r\n
\r\n
\r\n
\r\n
\r\n {{ market.marketName }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
1\">\r\n
\r\n {{ activeLng }}\r\n
\r\n
\r\n
\r\n
\r\n {{ lng.label }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, HostListener, OnInit } from \"@angular/core\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { DownloadAddToModel, MediaModel } from \"./media-model\";\r\nimport { WebManageMediaModel } from \"../../download/download-model\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { saveAs } from \"file-saver\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Location } from \"@angular/common\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { SearchModel, WebSearchModel } from \"../../header/search/search-model\";\r\nimport { MyFilesService } from \"../../shared/services/my-files.service\";\r\nimport { DoCheck, KeyValueDiffers, KeyValueDiffer } from \"@angular/core\";\r\nimport { WebNewsDetailsMediaModel } from \"../news/news-model\";\r\nimport { MyFilesModel } from \"../../shared/services/my-files-model\";\r\nimport { forkJoin } from \"rxjs\";\r\nimport { AlgoliaService } from \"../../shared/services/algolia.service\";\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-media\",\r\n templateUrl: \"./media.component.html\",\r\n styleUrls: [\"./media.component.less\"],\r\n})\r\nexport class MediaComponent implements OnInit {\r\n selectedType: any;\r\n media: any[];\r\n forDownload: any[] = [];\r\n downloadIds: any[] = [];\r\n mediaId: number;\r\n activeSubTab: number = 1;\r\n cartItems: MyFilesModel;\r\n disabledButton: boolean;\r\n loader: boolean;\r\n filterDropdown: boolean;\r\n filtered: WebManageMediaModel[];\r\n grid: string;\r\n p = 1;\r\n itemsPerPage: number = 12;\r\n autoplay: boolean;\r\n mediaDropdown: boolean;\r\n all = true;\r\n image: boolean;\r\n video: boolean;\r\n document: boolean;\r\n audio: boolean;\r\n popup = false;\r\n loginPopup: boolean;\r\n mediaModelResponse = new MediaModel();\r\n styles = new PageStyle();\r\n user: any;\r\n activeAllTab = false;\r\n activeTab = false;\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n socials: string[] = [];\r\n addDownloadModel: DownloadAddToModel;\r\n activeAll = true;\r\n activeImage = false;\r\n activeVideo = false;\r\n activeDoc = false;\r\n activeAudio = false;\r\n totalItems: number;\r\n mediaNameLength: number;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n buttonsHelper = ButtonsHelper;\r\n sLng: number;\r\n filtersVisible = false;\r\n\r\n mediaMinute: number;\r\n mediaSecond: number;\r\n\r\n whiteShareStyle = true;\r\n\r\n callGetAllData = true;\r\n downloadActive = false;\r\n downloadSubscription: any;\r\n cancelDownloads = false;\r\n lazyLoadingLoader = false;\r\n maxPageMedia = 1;\r\n showFilter = false;\r\n searchModelData = new SearchModel();\r\n dateToButton = false;\r\n dateFromButton = false;\r\n dateFrom: Date = null;\r\n dateTo: Date = null;\r\n currentType;\r\n allFiles: number = 0;\r\n filters: any = [];\r\n differ: KeyValueDiffer;\r\n mediaGroups: WebManageMediaModel[][] = [[]];\r\n\r\n isEasyJet: boolean = false;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private http: HttpClient,\r\n private languageService: LanguageService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private location: Location,\r\n private myFilesService: MyFilesService,\r\n private route: ActivatedRoute,\r\n private differs: KeyValueDiffers,\r\n private algoliaService: AlgoliaService\r\n ) {\r\n // if (window.innerWidth <= 1100) {\r\n // this.grid = \"Columns2\";\r\n // } else {\r\n // this.grid = \"Columns4\";\r\n // }\r\n // window.onresize = (e) => {\r\n // ngZone.run(() => {\r\n // if (window.innerWidth <= 1100) {\r\n // this.grid = \"Columns2\";\r\n // } else {\r\n // this.grid = \"Columns4\";\r\n // }\r\n // });\r\n // };\r\n this.differ = this.differs.find({}).create();\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cartItems = myFiles;\r\n });\r\n this.language = languageService.getLanguage();\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n if (media) {\r\n this.callGetAllData = true;\r\n this.openPopup(+media);\r\n }\r\n });\r\n }\r\n\r\n // @HostListener(\"window:resize\", [\"$event\"])\r\n // onResize(event) {\r\n // this.resize();\r\n // }\r\n\r\n @HostListener('window:scroll', ['$event'])\r\n onScroll(event) {\r\n if (\r\n window.innerHeight + window.scrollY >=\r\n document.body.offsetHeight - 300\r\n && !this.lazyLoadingLoader\r\n ) {\r\n this.loadMore();\r\n }\r\n }\r\n\r\n toggleShowFilter() {\r\n this.showFilter = !this.showFilter;\r\n }\r\n\r\n loadMore() {\r\n if (this.p < this.maxPageMedia) {\r\n this.p++;\r\n this.lazyLoadingLoader = true;\r\n this.changePage(this.p);\r\n }\r\n }\r\n\r\n openPopup(id: number) {\r\n this.popup = true;\r\n this.mediaId = id;\r\n }\r\n\r\n public config: any;\r\n getSearch() {\r\n const configObservable = this.mcService.getSearchConfig();\r\n const searchObservable = this.mcService.getSearch();\r\n forkJoin([configObservable, searchObservable]).subscribe(\r\n (response: any) => {\r\n this.config = response[0];\r\n this.searchModelData = response[1];\r\n this.searchModelData.searchModel = this.getFilters();\r\n if (this.callGetAllData) {\r\n this.getMedias(this.p, null, true);\r\n } else {\r\n this.loader = false;\r\n }\r\n },\r\n (error) => {\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n\r\n onChangeBrand(id: number) {\r\n if (id == 0) {\r\n this.searchModelData.searchModel.subClientIds = [];\r\n let select = (document.getElementById('brandSelect'));\r\n select.value = '0';\r\n } else {\r\n this.searchModelData.searchModel.subClientIds = [id];\r\n }\r\n }\r\n\r\n clearFilters() {\r\n if (this.searchModelData.subClients.length > 0) {\r\n this.onChangeBrand(0);\r\n }\r\n this.searchModelData.searchModel.dateFrom = null;\r\n this.searchModelData.searchModel.dateTo = null;\r\n this.searchModelData.searchModel.searchText = '';\r\n this.getMedias(1, this.selectedType, true);\r\n }\r\n\r\n toggleFilters() {\r\n this.filtersVisible = !this.filtersVisible;\r\n }\r\n\r\n activeallC(name) {\r\n if (name == \"all\") {\r\n if (this.activeAllTab) {\r\n this.allActive = true;\r\n } else {\r\n this.activeAllTab = true;\r\n }\r\n } else if (name == \"image\") {\r\n if (this.activeImageTab) {\r\n this.imageActive = true;\r\n } else {\r\n this.activeImageTab = true;\r\n }\r\n } else if (name == \"video\") {\r\n if (this.activeVideoTab) {\r\n this.videoActive = true;\r\n } else {\r\n this.activeVideoTab = true;\r\n }\r\n } else if (name == \"document\") {\r\n if (this.activeDocumentsTab) {\r\n this.docActive = true;\r\n } else {\r\n this.activeDocumentsTab = true;\r\n }\r\n } else if (name == \"audio\") {\r\n if (this.activeAudioTab) {\r\n this.audioActive = true;\r\n } else {\r\n this.activeAudioTab = true;\r\n }\r\n }\r\n }\r\n\r\n activeallCOut(name) {\r\n if (name == \"all\") {\r\n if (!this.allActive) {\r\n this.activeAllTab = false;\r\n }\r\n } else if (name == \"image\") {\r\n if (!this.imageActive) {\r\n this.activeImageTab = false;\r\n }\r\n } else if (name == \"video\") {\r\n if (!this.videoActive) {\r\n this.activeVideoTab = false;\r\n }\r\n } else if (name == \"document\") {\r\n if (!this.docActive) {\r\n this.activeDocumentsTab = false;\r\n }\r\n } else if (name == \"audio\") {\r\n if (!this.audioActive) {\r\n this.activeAudioTab = false;\r\n }\r\n }\r\n }\r\n\r\n activeTabM(tab) {\r\n this.activeAll = false;\r\n this.activeImage = false;\r\n this.activeVideo = false;\r\n this.activeDoc = false;\r\n this.activeAudio = false;\r\n if (tab === \"image\") {\r\n this.activeImage = true;\r\n }\r\n if (tab === \"all\") {\r\n this.activeAll = true;\r\n }\r\n if (tab === \"video\") {\r\n this.activeVideo = true;\r\n }\r\n if (tab === \"audio\") {\r\n this.activeAudio = true;\r\n }\r\n if (tab === \"doc\") {\r\n this.activeDoc = true;\r\n }\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.user = TokenManagerService.getUser();\r\n window.scrollTo(0, 0);\r\n this.getSearch();\r\n this.cartItems = this.myFilesService.getMyFiles();\r\n if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n this.isEasyJet = true;\r\n }\r\n }\r\n\r\n changeColorButtonn(e) {\r\n // //\r\n if (e.target.tagName == \"DIV\") {\r\n e.target.style.background = this.styles.style.mainButton2HoverColor;\r\n } else {\r\n e.target.parentElement.style.background =\r\n this.styles.style.mainButton2HoverColor;\r\n }\r\n }\r\n\r\n changeColorButton(e) {\r\n if (e.target.tagName == \"DIV\") {\r\n e.target.style.background = this.styles.style.mainButton2DefaultColor;\r\n }\r\n }\r\n\r\n setColor(e) {\r\n setTimeout(() => {\r\n const element = document.getElementsByClassName(\r\n \"current\"\r\n ) as HTMLCollectionOf;\r\n if (element[0])\r\n element[0].style.backgroundColor =\r\n \"\" + this.styles.style.mainIdentifyingColor;\r\n });\r\n }\r\n\r\n openMediaDropdown(media) {\r\n media.mediaDropdown = !media.mediaDropdown;\r\n event.stopPropagation();\r\n }\r\n\r\n onClickOutside(event: Object, media) {\r\n if (event && event[\"value\"] === true) {\r\n media.mediaDropdown = false;\r\n }\r\n }\r\n\r\n openDropdown() {\r\n this.filterDropdown = true;\r\n }\r\n\r\n closeDropdown() {\r\n this.filterDropdown = false;\r\n }\r\n\r\n public mediaFiles: any[] = [];\r\n\r\n getMedias(page, type = null, isReset = false) {\r\n this.saveFilters();\r\n this.currentType = type;\r\n this.loader = isReset;\r\n this.searchModelData.searchModel.page = page;\r\n if (isReset) this.searchModelData.searchModel.page = 1;\r\n this.searchModelData.searchModel.pageSize = this.itemsPerPage;\r\n this.searchModelData.searchModel.languageId = this.sLng;\r\n let typeId = this.getMediaTypeId(type);\r\n let dateFrom = null;\r\n let dateTo = null;\r\n if (this.searchModelData.searchModel.dateFrom != null) {\r\n dateFrom = new Date(this.searchModelData.searchModel.dateFrom);\r\n dateFrom.setHours(0, 0, 0, 0);\r\n }\r\n if (this.searchModelData.searchModel.dateTo != null) {\r\n dateTo = new Date(this.searchModelData.searchModel.dateTo);\r\n dateTo.setHours(23, 59, 59, 999);\r\n }\r\n this.algoliaService.searchMediaWithFilters(\r\n this.searchModelData.searchModel.searchText,\r\n this.searchModelData.searchModel.page,\r\n this.searchModelData.searchModel.pageSize,\r\n typeId,\r\n this.searchModelData.searchModel.subClientIds.length > 0 ? this.searchModelData.searchModel.subClientIds[0] : null,\r\n this.searchModelData.searchModel.marketId == 0 ? null : this.searchModelData.searchModel.marketId,\r\n dateFrom,\r\n dateTo\r\n ).then((response: any) => {\r\n const mappedResults = response.results.map((x) => {\r\n let id;\r\n if (x.isPublished) {\r\n id = x.publishedIds && x.publishedIds.length > 0 ? x.publishedIds[0]\r\n : parseInt(x.objectID);\r\n } else {\r\n id =\r\n x.storyMediaIds && x.storyMediaIds.length > 0\r\n ? x.storyMediaIds[0]\r\n : parseInt(x.objectID);\r\n }\r\n const fullHdUrl = x.urls.find((x) => x.format === 4);\r\n const originalUrl = x.urls.find((x) => x.format === 5);\r\n const thumbUrl = x.urls.find((x) => x.format === 2);\r\n return {\r\n mediaType: this.getMediaName(x.type),\r\n name: x.title,\r\n id: id,\r\n thumbUrl: thumbUrl ? thumbUrl.url : null,\r\n fullHDUrl: x.typeName === \"image\" && x.urls.find((url) => url.format == 3) ? x.urls.find((url) => url.format == 3).url : null,\r\n downloadLink: fullHdUrl ? fullHdUrl.url : originalUrl ? originalUrl.url : x.urls.length > 0 ? x.urls[0].url : null,\r\n typeName: x.typeName,\r\n isPublished: x.isPublished,\r\n relativeShareUrl: '/results/' + id + '?isPublished=' + x.isPublished,\r\n urls: x.urls,\r\n }\r\n });\r\n if (this.mediaFiles && !isReset) {\r\n this.mediaFiles = this.mediaFiles.concat(mappedResults);\r\n } else {\r\n this.mediaFiles = mappedResults;\r\n this.downloadIds = [];\r\n this.forDownload = [];\r\n }\r\n\r\n this.totalItems = response.total;\r\n this.updateFilters(response);\r\n\r\n this.maxPageMedia = Math.ceil(response.total / this.itemsPerPage);\r\n for (const x of this.mediaFiles) {\r\n if (x.mediaType.toLowerCase() === \"document\") {\r\n x.thumbUrl = \"assets/images/document_default.png\";\r\n } else if (x.mediaType.toLowerCase() === \"audio\") {\r\n x.thumbUrl = \"assets/images/audio_default.png\";\r\n }\r\n const fullHdUrl = x.urls.find((x) => x.format === 4);\r\n const originalUrl = x.urls.find((x) => x.format === 5);\r\n let downloadUrl = \"\";\r\n if (fullHdUrl) {\r\n downloadUrl = fullHdUrl.url;\r\n } else if (originalUrl) {\r\n downloadUrl = originalUrl.url;\r\n } else if (x.urls.length > 0) {\r\n downloadUrl = x.urls[0].url;\r\n }\r\n if (downloadUrl) {\r\n this.forDownload.push(downloadUrl);\r\n this.downloadIds.push(x.id);\r\n x.downloadUrl = downloadUrl;\r\n }\r\n }\r\n if (type) {\r\n switch (type) {\r\n case \"Image\":\r\n this.totalItems = response.images;\r\n this.activeTabM(\"image\");\r\n break;\r\n case \"Video\":\r\n this.totalItems = response.videos;\r\n this.activeTabM(\"video\");\r\n break;\r\n case \"Document\":\r\n this.totalItems = response.documents;\r\n this.activeTabM(\"doc\");\r\n break;\r\n case \"Audio\":\r\n this.totalItems = response.audios;\r\n this.activeTabM(\"audio\");\r\n break;\r\n }\r\n } else {\r\n this.activeTabM(\"all\");\r\n }\r\n this.loader = false;\r\n this.lazyLoadingLoader = false;\r\n this.mediaGroups = [[]];\r\n this.groupMedia();\r\n });\r\n\r\n }\r\n\r\n getMediaTypeId(mediaName: string): number {\r\n switch (mediaName) {\r\n case \"Image\":\r\n return 3;\r\n case \"Video\":\r\n return 2;\r\n case \"Document\":\r\n return 4;\r\n case \"Audio\":\r\n return 1;\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n getMediaName(mediaTypeId: number): string {\r\n switch (mediaTypeId) {\r\n case 3:\r\n return \"Image\";\r\n case 2:\r\n return \"Video\";\r\n case 4:\r\n return \"Document\";\r\n case 1:\r\n return \"Audio\";\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n groupMedia() {\r\n let count = 0;\r\n for (const media of this.mediaFiles) {\r\n if (this.mediaGroups[count].length >= 4) count++;\r\n if (!this.mediaGroups[count]) this.mediaGroups[count] = [];\r\n this.mediaGroups[count].push(media);\r\n }\r\n }\r\n\r\n // resize() {\r\n // if (this.mediaModelResponse.mediaPageGridType === \"Columns2\") {\r\n // this.mediaNameLength = 80;\r\n // if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n // this.mediaNameLength = 50;\r\n // }\r\n // if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n // this.mediaNameLength = 50;\r\n // }\r\n // if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n // this.mediaNameLength = 34;\r\n // }\r\n // if (window.innerWidth < 700) {\r\n // this.mediaNameLength = 34;\r\n // }\r\n // }\r\n // if (this.mediaModelResponse.mediaPageGridType === \"Columns3\") {\r\n // this.mediaNameLength = 40;\r\n\r\n // if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n // this.mediaNameLength = 30;\r\n // }\r\n // if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n // this.mediaNameLength = 26;\r\n // }\r\n // if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n // this.mediaNameLength = 15;\r\n // }\r\n // if (window.innerWidth < 700) {\r\n // this.mediaNameLength = 34;\r\n // }\r\n // }\r\n // if (this.mediaModelResponse.mediaPageGridType === \"Columns4\") {\r\n // this.mediaNameLength = 26;\r\n\r\n // if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n // this.mediaNameLength = 16;\r\n // }\r\n // if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n // this.mediaNameLength = 26;\r\n // }\r\n // if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n // this.mediaNameLength = 15;\r\n // }\r\n // if (window.innerWidth < 700) {\r\n // this.mediaNameLength = 34;\r\n // }\r\n // }\r\n // }\r\n\r\n sendToCart() {\r\n const component = this;\r\n this.mediaFiles.forEach(function (value) {\r\n if (component.cartItems.storyMediaIds.indexOf(value.id) == -1) {\r\n component.myFilesService.pushMyFiles(value.id);\r\n value.addedToCart = true;\r\n // localStorage.setItem(\"cart\", JSON.stringify(component.cartItems));\r\n }\r\n });\r\n }\r\n\r\n getMediaUrl(url, mediaId) {\r\n // add url from api\r\n // //\r\n return url.replace(/%20| /g, \"-\") + \"/\" + mediaId;\r\n }\r\n\r\n addDownloadClientSide() {\r\n for (const x of this.mediaModelResponse.media) {\r\n for (const y of this.forDownload) {\r\n if (x.downloadLink == y) {\r\n x.downloads++;\r\n }\r\n }\r\n }\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n if (this.user.cmsUser == null) {\r\n media.views++;\r\n }\r\n this.location.replaceState(media.relativeShareUrl);\r\n // this.router.navigateByUrl(UrlHelper.replaceFullUrlTitle('media' + media.relativeShareUrl));\r\n }\r\n\r\n openMediaPopupAutplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n this.location.replaceState(media.relativeShareUrl);\r\n // this.router.navigateByUrl(UrlHelper.replaceFullUrlTitle('media' + media.relativeShareUrl));\r\n }\r\n\r\n changeTab(index) {\r\n if (index === this.activeSubTab) return;\r\n this.p = 1;\r\n this.activeSubTab = index;\r\n this.setColor($);\r\n switch (index) {\r\n case 1:\r\n this.all = true;\r\n this.image = false;\r\n this.video = false;\r\n this.document = false;\r\n this.audio = false;\r\n\r\n this.selectedType = null;\r\n this.activeAllTab = true;\r\n this.activeImageTab = false;\r\n this.activeVideoTab = false;\r\n this.activeDocumentsTab = false;\r\n this.activeAudioTab = false;\r\n this.getMedias(this.p, null, true);\r\n this.allActive = true;\r\n this.imageActive = false;\r\n this.videoActive = false;\r\n this.audioActive = false;\r\n this.docActive = false;\r\n\r\n break;\r\n case 2:\r\n this.all = false;\r\n this.image = true;\r\n this.video = false;\r\n this.document = false;\r\n this.audio = false;\r\n\r\n this.selectedType = \"Image\";\r\n this.getMedias(this.p, this.selectedType, true);\r\n this.activeAllTab = false;\r\n this.activeImageTab = true;\r\n this.activeVideoTab = false;\r\n this.activeDocumentsTab = false;\r\n this.activeAudioTab = false;\r\n this.allActive = false;\r\n this.imageActive = true;\r\n this.videoActive = false;\r\n this.audioActive = false;\r\n this.docActive = false;\r\n\r\n break;\r\n case 3:\r\n this.all = false;\r\n this.image = false;\r\n this.video = true;\r\n this.document = false;\r\n this.audio = false;\r\n this.activeAllTab = false;\r\n this.activeImageTab = false;\r\n this.activeVideoTab = true;\r\n this.activeDocumentsTab = false;\r\n this.activeAudioTab = false;\r\n\r\n this.selectedType = \"Video\";\r\n this.getMedias(this.p, this.selectedType, true);\r\n this.allActive = false;\r\n this.imageActive = false;\r\n this.videoActive = true;\r\n this.audioActive = false;\r\n this.docActive = false;\r\n\r\n break;\r\n\r\n case 4:\r\n this.all = false;\r\n this.image = false;\r\n this.video = false;\r\n this.document = true;\r\n this.audio = false;\r\n\r\n this.selectedType = \"Document\";\r\n this.getMedias(this.p, this.selectedType, true);\r\n this.activeAllTab = false;\r\n this.activeImageTab = false;\r\n this.activeVideoTab = false;\r\n this.activeDocumentsTab = true;\r\n this.activeAudioTab = false;\r\n this.allActive = false;\r\n this.imageActive = false;\r\n this.videoActive = false;\r\n this.audioActive = false;\r\n this.docActive = true;\r\n\r\n break;\r\n\r\n case 5:\r\n this.all = false;\r\n this.image = false;\r\n this.video = false;\r\n this.document = false;\r\n this.audio = true;\r\n\r\n this.selectedType = \"Audio\";\r\n this.getMedias(this.p, this.selectedType, true);\r\n this.activeAllTab = false;\r\n this.activeImageTab = false;\r\n this.activeVideoTab = false;\r\n this.activeDocumentsTab = false;\r\n this.activeAudioTab = true;\r\n this.allActive = false;\r\n this.imageActive = false;\r\n this.videoActive = false;\r\n this.audioActive = true;\r\n this.docActive = false;\r\n\r\n break;\r\n }\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n const niz = new DownloadAddToModel();\r\n niz.publishedMediaIds = this.mediaFiles.filter((x) => x.isPublished).map((x) => x.id);\r\n niz.storyMediaIds = this.mediaFiles.filter((x) => !x.isPublished).map((x) => x.id);\r\n niz.userId = this.user.id;\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId.toString()\r\n );\r\n });\r\n niz.publishedMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download-pm\",\r\n niz.userId.toString()\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n mediaChecked(media, event) {\r\n const component = this;\r\n const index = this.forDownload.indexOf(media);\r\n media.checked = !media.checked;\r\n if (component.forDownload.indexOf(media) == -1 && media.checked) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n } else if (!media.checked) {\r\n component.forDownload.splice(index, 1);\r\n component.downloadIds.splice(index, 1);\r\n }\r\n\r\n event.target.style.backgroundColor = event.target.checked\r\n ? this.styles.style.mainIdentifyingColor\r\n : \"\";\r\n }\r\n\r\n cancelDownload() {\r\n if (this.downloadSubscription) {\r\n this.downloadSubscription.unsubscribe();\r\n }\r\n\r\n this.downloadActive = false;\r\n this.disabledButton = false;\r\n this.cancelDownloads = true;\r\n }\r\n\r\n download() {\r\n if (\r\n this.mediaModelResponse.mustRegisterToDownload &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n const urls = this.forDownload;\r\n const component = this;\r\n const zip = new JSZip();\r\n let count = 0;\r\n const zipFilename = \"download.zip\";\r\n\r\n if (this.forDownload.length > 1) {\r\n component.disabledButton = true;\r\n component.downloadActive = true;\r\n component.cancelDownloads = false;\r\n\r\n urls.forEach((url) => {\r\n const filename = url.split(\"/\")[8];\r\n\r\n if (component.cancelDownloads) {\r\n return;\r\n }\r\n\r\n // loading a file and add it in a zip file\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (component.cancelDownloads) {\r\n return;\r\n }\r\n\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n\r\n if (count === urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n component.disabledButton = false;\r\n component.downloadActive = false;\r\n\r\n if (component.user.cmsUser === null) {\r\n component.addDownload();\r\n }\r\n });\r\n }\r\n });\r\n });\r\n this.addDownloadClientSide();\r\n } else {\r\n for (const x of this.forDownload) {\r\n component.downloadActive = true;\r\n component.disabledButton = true;\r\n\r\n this.downloadSubscription = this.http\r\n .get(x, { responseType: \"blob\" })\r\n .subscribe(\r\n (blob: Blob) => {\r\n const filename = x.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n\r\n component.downloadActive = false;\r\n component.disabledButton = false;\r\n\r\n if (component.user.cmsUser === null) {\r\n component.addDownload();\r\n }\r\n\r\n this.addDownloadClientSide();\r\n },\r\n (error) => {\r\n component.downloadActive = false;\r\n component.disabledButton = false;\r\n }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n changePage(page) {\r\n this.p = page;\r\n this.getMedias(page, this.selectedType);\r\n }\r\n\r\n twoGrid() {\r\n this.grid = \"Columns2\";\r\n this.itemsPerPage = 12;\r\n }\r\n\r\n threeGrid() {\r\n this.grid = \"Columns3\";\r\n this.itemsPerPage = 12;\r\n }\r\n\r\n fourGrid() {\r\n this.grid = \"Columns4\";\r\n this.itemsPerPage = 12;\r\n }\r\n\r\n openDateFrom() {\r\n this.dateFromButton = !this.dateFromButton;\r\n }\r\n\r\n openDateTo() {\r\n this.dateToButton = !this.dateToButton;\r\n }\r\n\r\n changeFromDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n this.dateTo = new Date();\r\n }\r\n }\r\n }\r\n\r\n changeToDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n const dateTo: Date = new Date(this.dateTo);\r\n this.dateFrom = new Date(dateTo.getTime());\r\n }\r\n }\r\n }\r\n updateFilters(response) {\r\n this.allFiles = response.total;\r\n this.filters = [\r\n {\r\n key: 1,\r\n text: this.language.allFiles,\r\n faClass: \"fal fa-archive\",\r\n amount: this.allFiles,\r\n },\r\n {\r\n key: 2,\r\n text: this.language.images,\r\n faClass: \"fal fa-camera-retro\",\r\n amount: response.images,\r\n },\r\n {\r\n key: 3,\r\n text: this.language.videoFiles,\r\n faClass: \"fal fa-video\",\r\n amount: response.videos,\r\n },\r\n {\r\n key: 4,\r\n text: this.language.documents,\r\n faClass: \"fal fa-file\",\r\n amount: response.documents,\r\n },\r\n {\r\n key: 5,\r\n text: this.language.audioFiles,\r\n faClass: \"fal fa-volume-up\",\r\n amount: response.audios,\r\n },\r\n ];\r\n }\r\n\r\n saveFilters() {\r\n console.log(this.searchModelData.searchModel.dateFrom);\r\n localStorage.setItem(\"mediaFilters\", JSON.stringify(this.searchModelData.searchModel));\r\n }\r\n\r\n getFilters(): WebSearchModel {\r\n let filters: WebSearchModel = JSON.parse(localStorage.getItem(\"mediaFilters\"));\r\n if (filters) {\r\n this.showFilter = filters.subClientIds !== null\r\n && filters.subClientIds.length > 0\r\n || filters.searchText !== null\r\n && filters.searchText.length > 0\r\n || filters.dateFrom !== null || filters.dateTo !== null;\r\n return filters;\r\n } else {\r\n filters = new WebSearchModel();\r\n this.showFilter = false;\r\n filters.images = true;\r\n filters.video = true;\r\n filters.document = true;\r\n filters.audio = true;\r\n filters.media = true;\r\n filters.stories = false;\r\n return filters;\r\n }\r\n }\r\n\r\n isSelected(id: number): boolean {\r\n return this.searchModelData.searchModel.subClientIds[0] == id;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Media

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ language.filterBy || \"FilterBy:\" }}\r\n \r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ language.applyFilters || 'Apply Filters' }}\r\n \r\n
\r\n
\r\n \r\n {{ language.clearFilters || 'Clear Filters' }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
0\" class=\"filter-button flex generic-button empty\"\r\n (click)=\"changeTab(filter.key)\" [ngClass]=\"{ active: activeSubTab == filter.key }\">\r\n \r\n {{ filter.text }} ({{ filter.amount }})\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ language.addToMyFiles || language.addToFiles }} ({{\r\n mediaFiles?.length\r\n }})\r\n \r\n
\r\n
\r\n \r\n \r\n {{ language.download }} ({{ mediaFiles?.length }})\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { catchError, map } from \"rxjs/operators\";\r\n\r\nimport { throwError as observableThrowError, Observable } from \"rxjs\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport { HttpRequestService } from \"./http-request.service\";\r\nimport { EmailModel } from \"../../routes/contact/contact-model\";\r\nimport {\r\n HttpClient,\r\n HttpErrorResponse,\r\n HttpHandler,\r\n HttpHeaders,\r\n} from \"@angular/common/http\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { ToastrConfig } from \"../helpers/toastr-config\";\r\nimport { DownloadAddToModel } from \"../../routes/media/media-model\";\r\n\r\n@Injectable()\r\nexport class McService {\r\n constructor(\r\n private http: HttpRequestService,\r\n private httpClient: HttpClient,\r\n private toastr: ToastrService\r\n ) { }\r\n\r\n private getNewsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebGetNews\";\r\n private getClientInfoUrl = environment.apiUrl + \"/MediaCenterWeb/GetClientInfo\";\r\n private getMediaUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebGetMedia\";\r\n private getContactUsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebContactUs\";\r\n private getHomepageUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetMediaCenterWebHome\";\r\n private getHomepageUrlMedia =\r\n environment.apiUrl + \"/MediaCenterWeb/GetMediaCenterWebHomeMedia\";\r\n private getHomepageUrlStoriescategory =\r\n environment.apiUrl + \"/MediaCenterWeb/GetMediaCenterWebHomeStoriesCategory\";\r\n private getHomepageLatestStoriesUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetMediaCenterWebHomeLatestStories\";\r\n private getHomepageInitialUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetMediaCenterWebHomeInitial\";\r\n private getHeaderFooterUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebHeaderFooterLinks\";\r\n private getTermsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebTermsAndCondition\";\r\n private getRegisterUrl =\r\n environment.apiUrl + \"/MediaCenterUser/GetForRegister\";\r\n private getSearchUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebGetForFilter\";\r\n private redirectToCmsUrl =\r\n environment.apiUrl + \"/MediaCenterUser/RedirectToCMS\";\r\n private registerUrl = environment.apiUrl + \"/MediaCenterUser/Register\";\r\n private registerFbUrl =\r\n environment.apiUrl + \"/MediaCenterUser/RegisterWithFacebook\";\r\n private getUpdateUrl = environment.apiUrl + \"/MediaCenterUser/GetForUpdate\";\r\n private getTestimonialsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebTestimonials\";\r\n private updateUrl = environment.apiUrl + \"/MediaCenterUser/UpdateUser\";\r\n private facebookUrl =\r\n environment.apiUrl + \"/MediaCenterUser/LoginWithFacebook\";\r\n private addSharedToNewsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/AddShareToNews\";\r\n private addSharedToMediaUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/AddShareToMedia\";\r\n private addViewToMediaUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/AddViewToMedia\";\r\n private addDownloadToMediaUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/AddDownloadToMedia\";\r\n private getNewsDetailUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebGetNewsDetail\";\r\n private getMediaDetailUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebMediaDetail\";\r\n private webDownloadboxUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebDownloadBox\";\r\n private webGetBrandsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebGetBrands\";\r\n private sendEmailUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebContactUsSendEmail\";\r\n private searchMcStoriesUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebSearchStories\";\r\n private searchMcStoriesWithCodesUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebSearchStoriesWithCode\";\r\n private searchMcMediaUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebSearchMedia\";\r\n private getStyleUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetFontsAndColorsForWeb\";\r\n private getMetadatasUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/MediaCenterWebGetMetadatas\";\r\n private registerWithTwitterUrl =\r\n environment.apiUrl + \"/MediaCenterUser/RegisterWithTwitter\";\r\n private getUserByTokenUrl =\r\n environment.apiUrl + \"/MediaCenterUser/GetUserByToken\";\r\n private getUserTweetsUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetUserTweets\";\r\n private getTranslationUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetTranslation\";\r\n private getLanguagesUrl = environment.apiUrl + \"/MediaCenterWeb/GetLanguages\";\r\n private searchHomePageUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/SearchHomePage\";\r\n private getBrandStoriesUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/GetBrandStories\";\r\n private linkedinFeedUrl = environment.apiUrl + \"/MediaCenterWeb/LinkedInFeed\";\r\n private unsubscribeNewsletterUrl =\r\n environment.apiUrl + \"/MediaCenterUser/UnsubscribeFromNewsletter\";\r\n private redirectToMcUrl =\r\n environment.apiUrl + \"/MediaCenterUser/RedirectToMc\";\r\n private loginWithTokenUrl =\r\n environment.apiUrl + \"/MediaCenterUser/LoginWithToken\";\r\n private redirectMarketUrl =\r\n environment.apiUrl + \"/MediaCenterUser/RedirectMarket\";\r\n private getMarketsUrl =\r\n environment.apiUrl + \"/Markets/Urls\";\r\n private getCurrentMarketUrl =\r\n environment.apiUrl + \"/Markets/Current\";\r\n private getSearchConfigUrl =\r\n environment.apiUrl + \"/MediaCenterWeb/SearchConfig\";\r\n private getLoginAttemptsUrl = environment.apiUrl + \"/McLoginAttempts/List\"\r\n\r\n redirectToMc(clientId) {\r\n return this.http.post(this.redirectToMcUrl + \"?clientId=\" + clientId, null, false, null, true, false);\r\n }\r\n\r\n getSearchConfig() {\r\n return this.http.get(this.getSearchConfigUrl);\r\n }\r\n\r\n getLoginAttempts(userId, page, pageSize) {\r\n return this.http.get(this.getLoginAttemptsUrl + \"?mcUserId=\" + userId + \"&page=\" + page + \"&pageSize=\" + pageSize);\r\n }\r\n\r\n getCurrentMarket() {\r\n return this.http.get(this.getCurrentMarketUrl);\r\n }\r\n\r\n redirectToMarket() {\r\n return this.http.post(this.redirectMarketUrl, null, false, null, true, false);\r\n }\r\n\r\n getMarkets() {\r\n return this.http.get(this.getMarketsUrl);\r\n }\r\n\r\n loginWithToken(token) {\r\n return this.http.post(this.loginWithTokenUrl + \"?tokenString=\" + token, null);\r\n }\r\n\r\n getNews(page, id) {\r\n return this.http.get(\r\n this.getNewsUrl + \"?page=\" + page + \"&languageId=\" + id\r\n );\r\n }\r\n\r\n getClientInfo() {\r\n return this.http.get(this.getClientInfoUrl);\r\n }\r\n\r\n getBrandStories(clientName, page, id) {\r\n return this.http.get(\r\n this.getBrandStoriesUrl +\r\n \"?clientName=\" +\r\n clientName +\r\n \"&page=\" +\r\n page +\r\n \"&languageId=\" +\r\n id\r\n );\r\n }\r\n\r\n getMedia(page, type = null, id) {\r\n const mediaType = type ? \"&type=\" + type : \"\";\r\n\r\n return this.http.get(\r\n this.getMediaUrl + \"?page=\" + page + mediaType + \"&languageId=\" + id\r\n );\r\n }\r\n\r\n getContactUs(id) {\r\n return this.http.get(this.getContactUsUrl + \"?languageId=\" + id);\r\n }\r\n\r\n redirectToCms(data) {\r\n return this.http.post(this.redirectToCmsUrl, data);\r\n }\r\n\r\n getTestimonials() {\r\n return this.http.get(this.getTestimonialsUrl);\r\n }\r\n\r\n getHomepage(id) {\r\n return this.http.get(this.getHomepageUrl + \"?languageId=\" + id);\r\n }\r\n getHomepageMedia(id) {\r\n return this.http.get(this.getHomepageUrlMedia + \"?languageId=\" + id);\r\n }\r\n getHomepageStoriesCategory(id) {\r\n return this.http.get(\r\n this.getHomepageUrlStoriescategory + \"?languageId=\" + id\r\n );\r\n }\r\n getHomepageLatestStories(id) {\r\n return this.http.get(\r\n this.getHomepageLatestStoriesUrl + \"?languageId=\" + id\r\n );\r\n }\r\n getHomepageInitial(id) {\r\n return this.http.get(this.getHomepageInitialUrl + \"?languageId=\" + id);\r\n }\r\n\r\n searchHomepage(searchValue, id) {\r\n return this.http.get(\r\n this.searchHomePageUrl +\r\n \"?searchValue=\" +\r\n searchValue +\r\n \"&languageId=\" +\r\n id\r\n );\r\n }\r\n\r\n getHeaderFooter(id) {\r\n return this.http.get(this.getHeaderFooterUrl + \"?languageId=\" + id);\r\n }\r\n\r\n getTerms() {\r\n return this.http.get(this.getTermsUrl);\r\n }\r\n\r\n getRegister() {\r\n return this.http.get(this.getRegisterUrl);\r\n }\r\n\r\n register(data) {\r\n return this.http.post(\r\n this.registerUrl,\r\n data,\r\n false,\r\n \"You have successfully registered.\\nCheck your email to verify your account.\"\r\n );\r\n }\r\n\r\n registerWithTwitter(data) {\r\n return this.http.post(\r\n this.registerWithTwitterUrl,\r\n data,\r\n false,\r\n \"You have successfully registered.\\nCheck your email to verify your account.\"\r\n );\r\n }\r\n\r\n registerFb(data) {\r\n return this.http.post(\r\n this.registerFbUrl,\r\n data,\r\n false,\r\n \"You have successfully registered.\\nCheck your email to verify your account.\"\r\n );\r\n }\r\n\r\n getUpdate(id = 0) {\r\n return this.http.get(this.getUpdateUrl + \"?userId=\" + id);\r\n }\r\n\r\n update(data) {\r\n return this.http.post(\r\n this.updateUrl,\r\n data,\r\n true,\r\n \"You have updated your profile\"\r\n );\r\n }\r\n\r\n getSearch() {\r\n return this.http.get(this.getSearchUrl);\r\n }\r\n\r\n getStyle() {\r\n return this.http.get(this.getStyleUrl);\r\n }\r\n\r\n searchMcStories(request, hasStoryCodes = false) {\r\n if (hasStoryCodes && !request.marketId)\r\n return this.http.post(this.searchMcStoriesWithCodesUrl, request);\r\n return this.http.post(this.searchMcStoriesUrl, request);\r\n }\r\n\r\n searchMcMedia(request) {\r\n return this.http.post(this.searchMcMediaUrl, request);\r\n }\r\n\r\n addSharedToNews(storyId, userId, socialType, noErrorToast?) {\r\n const data = { userId, sharedItemId: storyId, socialType };\r\n return this.http.post(\r\n this.addSharedToNewsUrl,\r\n data,\r\n false,\r\n null,\r\n noErrorToast\r\n );\r\n }\r\n\r\n addViewToMedia(id, userId, isPublished = false) {\r\n return this.http.get(\r\n this.addViewToMediaUrl + \"?mediaId=\" + id + \"&userId=\" + userId + \"&isPublished=\" + isPublished\r\n );\r\n }\r\n\r\n addSharedToMedia(mediaId, userId, socialType, isPublished = false, noErrorToast?) {\r\n const data = { userId, sharedItemId: mediaId, socialType, isPublished };\r\n return this.http.post(\r\n this.addSharedToMediaUrl,\r\n data,\r\n false,\r\n null,\r\n noErrorToast\r\n );\r\n }\r\n\r\n addDownloadToMedia(data: DownloadAddToModel) {\r\n return this.http.post(this.addDownloadToMediaUrl, data);\r\n }\r\n\r\n getNewsDetail(id, lid, cmsUser: boolean) {\r\n return this.http.get(\r\n this.getNewsDetailUrl +\r\n \"?storyId=\" +\r\n id +\r\n \"&languageId=\" +\r\n lid +\r\n \"&cmsUser=\" +\r\n cmsUser\r\n );\r\n }\r\n\r\n downloadBox(ids) {\r\n return this.http.post(this.webDownloadboxUrl, ids, false, \"\", false);\r\n }\r\n\r\n getBrands() {\r\n return this.http.get(this.webGetBrandsUrl);\r\n }\r\n\r\n getMediaDetail(id, lid, isPublished = false) {\r\n return this.http.get(\r\n this.getMediaDetailUrl + \"?mediaId=\" + id + \"&languageId=\" + lid + \"&isPublished=\" + isPublished\r\n );\r\n }\r\n\r\n sendEmail(data: EmailModel) {\r\n return this.http.post(this.sendEmailUrl, data);\r\n }\r\n\r\n logInFb(id) {\r\n return this.http.get(this.facebookUrl + \"?facebookToken=\" + id);\r\n }\r\n\r\n getMeta() {\r\n return this.http.get(this.getMetadatasUrl);\r\n }\r\n\r\n getTranslation(id) {\r\n return this.http.get(this.getTranslationUrl + \"?languageId=\" + id);\r\n }\r\n\r\n getMcLanguage() {\r\n return this.http.get(this.getLanguagesUrl);\r\n }\r\n\r\n getUserByToken(token) {\r\n return this.httpClient.get(this.getUserByTokenUrl).pipe(\r\n map((response: Response) => {\r\n // const toast: Toast = {\r\n // type: 'success',\r\n // title: 'Well Done !',\r\n // body: 'Operation successful.',\r\n // showCloseButton: true,\r\n // closeHtml: '
'\r\n // };\r\n //\r\n // this.toasterService.pop(toast);\r\n\r\n return response;\r\n }),\r\n catchError((response) => this.handleError(response))\r\n );\r\n }\r\n\r\n handleError(error: any) {\r\n let errMsg: any;\r\n errMsg = error.error.message ? error.error.message : error.toString();\r\n //\r\n\r\n this.toastr.error(errMsg, \"Oh Snap!\", ToastrConfig.error);\r\n return observableThrowError(errMsg);\r\n }\r\n\r\n getUserTweets() {\r\n return this.http.get(this.getUserTweetsUrl);\r\n }\r\n\r\n linkedinFeed() {\r\n return this.http.get(this.linkedinFeedUrl);\r\n }\r\n\r\n unsubscribeFromNewsletter(code: string) {\r\n return this.http.post(this.unsubscribeNewsletterUrl, { code: code });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { SearchModel, WebSearchModel } from '../../header/search/search-model';\r\n\r\n@Injectable()\r\nexport class StorageService {\r\n\r\n private searchItemStories: BehaviorSubject = new BehaviorSubject(new SearchModel());\r\n private searchItemMedia: BehaviorSubject = new BehaviorSubject(new SearchModel());\r\n private fullName: BehaviorSubject = new BehaviorSubject('');\r\n private views: BehaviorSubject = new BehaviorSubject(false);\r\n private searchResult: BehaviorSubject = new BehaviorSubject(false);\r\n private mustRegister: BehaviorSubject = new BehaviorSubject(false);\r\n private anonymousShare: BehaviorSubject = new BehaviorSubject(false);\r\n private legalBanner: BehaviorSubject = new BehaviorSubject(false);\r\n\r\n private searchRequestModel: BehaviorSubject = new BehaviorSubject(new WebSearchModel());\r\n\r\n constructor() {\r\n }\r\n\r\n getSearchItemStories(): Observable {\r\n return this.searchItemStories.asObservable();\r\n }\r\n\r\n getSearchItemMedia(): Observable {\r\n return this.searchItemMedia.asObservable();\r\n }\r\n\r\n setSearchItemStories(val: any) {\r\n this.searchItemStories.next(val);\r\n }\r\n\r\n setSearchItemMedia(val: any) {\r\n this.searchItemMedia.next(val);\r\n }\r\n\r\n setName(val: any) {\r\n this.fullName.next(val);\r\n }\r\n\r\n getName(): Observable {\r\n return this.fullName.asObservable();\r\n }\r\n\r\n setLegalBanner(val: any) {\r\n this.legalBanner.next(val);\r\n }\r\n\r\n getLegalBanner(): Observable {\r\n return this.legalBanner.asObservable();\r\n }\r\n\r\n setLogin(val: any) {\r\n this.views.next(val);\r\n }\r\n\r\n getLogin(): Observable {\r\n return this.views.asObservable();\r\n }\r\n\r\n setSearch(val: any) {\r\n this.searchResult.next(val);\r\n }\r\n\r\n getSearch(): Observable {\r\n return this.searchResult.asObservable();\r\n }\r\n\r\n setSearchModel(val: any) {\r\n this.searchRequestModel.next(val);\r\n }\r\n\r\n getSearchModel() {\r\n return this.searchRequestModel.asObservable();\r\n }\r\n\r\n getMustRegister() {\r\n return this.mustRegister.asObservable();\r\n }\r\n\r\n getAnonymousShare() {\r\n return this.anonymousShare.asObservable();\r\n }\r\n\r\n setMustRegister(val: any) {\r\n this.mustRegister.next(val);\r\n }\r\n\r\n setAnonymousShare(anonymousShare: boolean) {\r\n this.anonymousShare.next(anonymousShare);\r\n }\r\n}\r\n","import { Component, Input, OnInit, OnChanges } from \"@angular/core\";\r\nimport { LinksModel } from \"../models/links/links.model\";\r\nimport {\r\n ActivatedRoute,\r\n NavigationEnd,\r\n Router,\r\n RouterState,\r\n} from \"@angular/router\";\r\nimport { LayoutModel } from \"../layout/layout-model\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { UserModel } from \"../login/login-model\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\n\r\n@Component({\r\n selector: \"app-footer\",\r\n templateUrl: \"./footer.component.html\",\r\n styleUrls: [\"./footer.component.less\"],\r\n})\r\nexport class FooterComponent implements OnInit, OnChanges {\r\n @Input() layoutResponseModel: LayoutModel = new LayoutModel();\r\n @Input() clientName: string;\r\n @Input() customClasses: string;\r\n @Input() isEasyJet: boolean;\r\n logo = \"\";\r\n styles: PageStyle;\r\n loggedUserName = \"\";\r\n anonymousShare: boolean;\r\n signIn: boolean;\r\n mustRegister: boolean;\r\n currentYear = new Date().getFullYear();\r\n socialLinkObjects: any;\r\n user: UserModel;\r\n language: Language;\r\n legalBanner: string;\r\n showLegalBanner: boolean = localStorage.getItem('legalBannerAgreed') == '1' ? false : true;\r\n\r\n constructor(\r\n private router: Router,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private storageService: StorageService,\r\n private languageService: LanguageService,\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n //\r\n const component = this;\r\n\r\n this.storageService.getMustRegister().subscribe((mustRegister) => {\r\n component.mustRegister = mustRegister;\r\n });\r\n\r\n this.storageService.getAnonymousShare().subscribe((anonymousShare) => {\r\n component.anonymousShare = anonymousShare;\r\n });\r\n\r\n this.router.events.subscribe((val) => {\r\n if (val instanceof NavigationEnd) {\r\n component.signIn =\r\n component.router.routerState.snapshot.url.indexOf(\"sign-in\") > -1;\r\n }\r\n });\r\n }\r\n\r\n ngOnChanges() {\r\n if (\r\n this.layoutResponseModel !== undefined &&\r\n this.layoutResponseModel !== null\r\n ) {\r\n this.socialLinkObjects = JSON.parse(\r\n this.layoutResponseModel.socialLinkJson\r\n );\r\n if (\r\n this.socialLinkObjects != null &&\r\n this.socialLinkObjects !== undefined\r\n ) {\r\n this.socialLinkObjects = this.socialLinkObjects.map((o) => {\r\n o.name = o.name.toLowerCase();\r\n o.link = this.checkLinkPrefix(o.link);\r\n return o;\r\n });\r\n } else {\r\n this.socialLinkObjects = [];\r\n }\r\n }\r\n }\r\n\r\n getLinkForUrl(url) {\r\n let r = url.indexOf(\"http\") > -1 ? url : `/${url}`;\r\n console.log(r);\r\n return r;\r\n }\r\n\r\n isOutsideUrl(url) {\r\n return url.indexOf(\"http\") > -1;\r\n }\r\n\r\n ngOnInit() {\r\n this.user = TokenManagerService.getUser();\r\n this.storageService.getName().subscribe((term) => {\r\n if (!term) {\r\n this.loggedUserName = \"\";\r\n } else {\r\n this.loggedUserName = term;\r\n }\r\n });\r\n this.storageService.getLegalBanner().subscribe((term) => {\r\n if (!term) {\r\n this.legalBanner = \"\";\r\n } else {\r\n this.legalBanner = term;\r\n }\r\n });\r\n }\r\n\r\n closeLegalBanner() {\r\n localStorage.setItem('legalBannerAgreed', '1');\r\n this.showLegalBanner = false;\r\n }\r\n\r\n checkLinkPrefix(link: string) {\r\n if (link.includes(\"http://\") || link.includes(\"https://\")) {\r\n return link;\r\n } else {\r\n return `http://${link}`;\r\n }\r\n }\r\n /*\r\n changeColor(e, color, link) {\r\n if (!link.active) {\r\n e.target.style.color = color;\r\n }\r\n }\r\n\r\n changeColorr(e, link) {\r\n if (!link.active) {\r\n e.target.style.color = this.styles.style.mainIdentifyingColor;\r\n } \r\n }\r\n*/\r\n changeColor(e, color) {\r\n e.target.style.color = color;\r\n }\r\n\r\n reroute(url) {\r\n //\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n const index = this.layoutResponseModel.footerLinks.indexOf(url);\r\n if (url.url.indexOf(\"http\") > -1) {\r\n window.open(url.url, \"_blank\");\r\n } else {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n url.active = true;\r\n this.router.navigate([\"/\" + url.url]);\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n

{{ language.legalBanner || 'Legal' }}

\r\n

\r\n {{ legalBanner }}\r\n

\r\n \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-social-home',\r\n templateUrl: './social-home.component.html',\r\n styleUrls: ['./social-home.component.less']\r\n})\r\nexport class SocialHomeComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \"Facebook\"\r\n \"Twitter\"\r\n \"instagram\"\r\n
\r\n
@DNA
\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, ElementRef, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { LayoutModel } from \"../layout/layout-model\";\r\nimport { ActivatedRoute, NavigationEnd, Params, Router } from \"@angular/router\";\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { McService } from \"../shared/services/mc-service\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { MetaModel } from \"../models/meta/meta\";\r\nimport { Meta, Title } from \"@angular/platform-browser\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { CommunicationService } from \"../shared/services/communication.service\";\r\nimport { ButtonsHelper } from \"../shared/helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../shared/services/my-files.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../shared/services/google-analytics-events.service\";\r\nimport { SearchComponent } from \"./search/search.component\";\r\nimport { MyFilesModel } from \"../shared/services/my-files-model\";\r\n\r\n@Component({\r\n selector: \"app-header-2\",\r\n templateUrl: \"./header-2.component.html\",\r\n styleUrls: [\"./header-2.component.less\"],\r\n})\r\nexport class HeaderComponent2 implements OnInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n @Input() metadatas: MetaModel[];\r\n @ViewChild('appSearch') searchChild: SearchComponent;\r\n @ViewChild(\"logoFlag\") logoFlag: ElementRef;\r\n styles: PageStyle;\r\n search: boolean;\r\n mobileNav: boolean;\r\n showDropdown: boolean;\r\n showMobDropdown: boolean;\r\n loggedUserName = \"\";\r\n mustRegister: boolean;\r\n anonymousShare: boolean;\r\n cms: any;\r\n user: any;\r\n loader: boolean;\r\n loginActive = false;\r\n loginColor: any;\r\n signinActive = false;\r\n signinColor: any;\r\n logo = \"\";\r\n language: Language;\r\n mobileLanguageDropdown = false;\r\n brandsColor: any;\r\n brandsActive = false;\r\n showDropdownLng = false;\r\n activeLng = \"English\";\r\n sLng: number;\r\n fromBrandsUrl: string;\r\n biggerLogo = false;\r\n invertColors = true;\r\n socialLinkObjects: any;\r\n showMyFiles: boolean = false;\r\n buttonsHelper = ButtonsHelper;\r\n cart: MyFilesModel = new MyFilesModel([], []);\r\n loggedUserEmail: any;\r\n markets = [];\r\n\r\n invertedHeaderRoutesExact: string[] = [\"/\", \"/home\", \"/about-us\", \"story\"];\r\n invertedHeaderRoutesPartial: string[] = [\"story\"];\r\n\r\n constructor(\r\n private router: Router,\r\n private mcService: McService,\r\n private authService: TokenManagerService,\r\n private languageService: LanguageService,\r\n private titleService: Title,\r\n private meta: Meta,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private communicationsService: CommunicationService,\r\n private storageService: StorageService,\r\n private myFilesService: MyFilesService,\r\n private googleAnalytics: GoogleAnalyticsEventsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cart = myFiles;\r\n });\r\n if (this.router.url.indexOf(\"brands\") > 0) {\r\n this.brandsActive = true;\r\n this.brandsColor = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n this.checkRouteForHeader();\r\n\r\n const component = this;\r\n this.communicationsService.fromBrands.subscribe((url: string) => {\r\n if (url) {\r\n setTimeout(() => {\r\n url = url.replace(/%2F/, \"/\");\r\n url = url.replace(/%2F/, \"/\");\r\n url = url.replace(/%3A/, \":\");\r\n component.fromBrandsUrl = url;\r\n });\r\n }\r\n });\r\n\r\n this.languageService.languageId.subscribe((languageId: number) => {\r\n this.sLng = languageId;\r\n this.getLng(this.sLng);\r\n });\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.storageService.getMustRegister().subscribe((mustRegister) => {\r\n component.mustRegister = mustRegister;\r\n });\r\n this.storageService.getAnonymousShare().subscribe((anonymousShare) => {\r\n component.anonymousShare = anonymousShare;\r\n });\r\n }\r\n\r\n checkRouteForHeader() {\r\n this.checkIsInvertedHeader(this.router.url);\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.checkIsInvertedHeader(event.url);\r\n }\r\n });\r\n }\r\n\r\n checkIsInvertedHeader(route: string) {\r\n const oneExact = this.invertedHeaderRoutesExact.some((r) => r == route);\r\n const onePartial = this.invertedHeaderRoutesPartial.some(\r\n (r) => route.indexOf(r) > 0\r\n );\r\n this.invertColors = oneExact || onePartial;\r\n }\r\n\r\n currentMarket;\r\n\r\n ngOnInit() {\r\n var actualWebsite: String = window.location.origin;\r\n\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.language = this.languageService.getLanguage();\r\n\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.getLng(this.sLng);\r\n\r\n this.storageService.getName().subscribe((term) => {\r\n this.loggedUserName = term;\r\n this.showDropdown = false;\r\n this.user = TokenManagerService.getUser();\r\n this.loggedUserEmail = this.user.email;\r\n });\r\n this.user = TokenManagerService.getUser();\r\n this.loggedUserName = this.user.fullName;\r\n this.loggedUserEmail = this.user.email;\r\n\r\n this.search = false;\r\n this.mobileNav = false;\r\n\r\n this.socialLinkObjects = JSON.parse(\r\n this.layoutResponseModel.socialLinkJson\r\n );\r\n if (\r\n this.socialLinkObjects !== null &&\r\n this.socialLinkObjects !== undefined\r\n ) {\r\n this.socialLinkObjects = this.socialLinkObjects.map((o) => {\r\n o.name = o.name.toLowerCase();\r\n o.link = this.checkLinkPrefix(o.link);\r\n return o;\r\n });\r\n } else {\r\n this.socialLinkObjects = [];\r\n }\r\n this.mcService.getMarkets().subscribe((markets: any) => {\r\n this.markets = markets;\r\n //check according to current url which market is active, ignoring cases, protocol and www, query params, everything after /, just the domain\r\n let currentDomain = window.location.href.toLowerCase();\r\n currentDomain = currentDomain.replace(/(^\\w+:|^)\\/\\//, \"\");\r\n currentDomain = currentDomain.replace(/www./, \"\");\r\n currentDomain = currentDomain.replace(/\\/.*/, \"\");\r\n this.markets.forEach((market) => {\r\n let marketUrl = market.url.toLowerCase();\r\n marketUrl = marketUrl.replace(/(^\\w+:|^)\\/\\//, \"\");\r\n marketUrl = marketUrl.replace(/www./, \"\");\r\n marketUrl = marketUrl.replace(/\\/.*/, \"\");\r\n if (marketUrl === currentDomain) {\r\n this.currentMarket = market;\r\n }\r\n });\r\n });\r\n }\r\n\r\n closeMyFiles(event) {\r\n if (event.target.id !== \"myFilesNav\") this.showMyFiles = false;\r\n }\r\n\r\n openMyFiles() {\r\n this.closeNav();\r\n this.showMyFiles = true;\r\n }\r\n\r\n checkLinkPrefix(link: string) {\r\n if (link.includes(\"http://\") || link.includes(\"https://\")) {\r\n return link;\r\n } else {\r\n return `http://${link}`;\r\n }\r\n }\r\n\r\n onLoad() {\r\n const width = (this.logoFlag.nativeElement as HTMLImageElement)\r\n .naturalWidth;\r\n const height = (this.logoFlag.nativeElement as HTMLImageElement)\r\n .naturalHeight;\r\n\r\n if (width > 4 * height) {\r\n this.biggerLogo = true;\r\n } else {\r\n this.biggerLogo = false;\r\n }\r\n }\r\n\r\n getLng(languageId) {\r\n if (this.layoutResponseModel) {\r\n for (let i = 0; i < this.layoutResponseModel.languages.length; i++) {\r\n if (languageId == this.layoutResponseModel.languages[i].id) {\r\n this.activeLng = this.layoutResponseModel.languages[i].label;\r\n }\r\n if (languageId == 0) {\r\n this.activeLng = \"English\";\r\n }\r\n }\r\n }\r\n }\r\n\r\n translate(id, label) {\r\n this.loader = true;\r\n this.activeLng = label;\r\n\r\n this.languageService.setLanguageId(id);\r\n\r\n this.router.navigateByUrl(\"/home\");\r\n location.reload();\r\n }\r\n\r\n changeColor(e, color, link) {\r\n if (link && !link.active) {\r\n e.target.style.color = color;\r\n }\r\n }\r\n\r\n changeColorr(e, link) {\r\n if (link && !link.active) {\r\n e.target.style.color = this.styles.style.textLinkHoverColor;\r\n }\r\n }\r\n\r\n changeColorCustomLink(e, color) {\r\n if (!this.brandsActive) {\r\n e.target.style.color = \"#3a3a3a\";\r\n }\r\n }\r\n\r\n changeColorrCustomLink(e, link) {\r\n if (!this.brandsActive) {\r\n e.target.style.color = this.styles.style.textLinkHoverColor;\r\n }\r\n }\r\n\r\n changeColorLinkBack(e, color) {\r\n e.target.style.color = this.styles.style.textH2Color;\r\n }\r\n\r\n changeColorLink(e) {\r\n e.target.style.color = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n redirectToCms() {\r\n this.mcService.redirectToCms(this.user.cmsUser).subscribe(\r\n (response: any) => {\r\n window.open(environment.cmsUrl + response.token, \"_blank\");\r\n },\r\n (error) => {\r\n console.error(error);\r\n }\r\n );\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n this.user = TokenManagerService.getUser();\r\n this.myFilesService.setMyFiles(this.myFilesService.getFiles());\r\n this.loggedUserName = this.user.fullName;\r\n this.loggedUserEmail = this.user.email;\r\n if (this.mustRegister) {\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n }\r\n\r\n showProfile() {\r\n this.showDropdown = !this.showDropdown;\r\n }\r\n\r\n showLanguage() {\r\n this.showDropdownLng = !this.showDropdownLng;\r\n }\r\n\r\n showDropdownMarkets: boolean = false;\r\n\r\n showMarkets() {\r\n this.showDropdownMarkets = !this.showDropdownMarkets;\r\n }\r\n\r\n showMobileLanguage() {\r\n this.mobileLanguageDropdown = !this.mobileLanguageDropdown;\r\n }\r\n\r\n showMobileProfile() {\r\n this.showMobDropdown = !this.showMobDropdown;\r\n }\r\n\r\n editProfile() {\r\n this.router.navigateByUrl(\"/profile\");\r\n }\r\n\r\n reroute(url) {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.brandsActive = false;\r\n this.brandsColor = this.styles.style.textHeaderColor;\r\n const index = this.layoutResponseModel.headerLinks.indexOf(url);\r\n if (url.url.indexOf(\"http\") > -1) {\r\n window.open(url.url, \"_blank\");\r\n } else {\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.router.navigateByUrl(url.url);\r\n url.active = true;\r\n }\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n url.link\r\n );\r\n }\r\n\r\n activeLink() {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.headerLinks.forEach((x) => {\r\n if (\"/\" + x.url === \"/home\") {\r\n x.active = true;\r\n } else {\r\n x.active = false;\r\n }\r\n });\r\n }\r\n\r\n rerouteToLogin(text: string) {\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.googleAnalytics.emitEvent(\"MenuClick\", \"MenuOption\", text);\r\n }\r\n\r\n rerouteToBrands() {\r\n this.brandsActive = true;\r\n this.brandsColor = this.styles.style.mainIdentifyingColor;\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n }\r\n\r\n showSearch() {\r\n this.search = true;\r\n this.searchChild?.wipeSearch();\r\n const input = document.getElementById(\"story-search-big\");\r\n setTimeout(() => {\r\n input.focus();\r\n }, 250);\r\n const body = document.getElementsByTagName(\"body\")[0];\r\n body.style.position = \"fixed\";\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n this.language.search\r\n );\r\n }\r\n\r\n openMobileNav() {\r\n this.mobileNav = true;\r\n }\r\n\r\n closeNav() {\r\n this.mobileNav = false;\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdown = false;\r\n }\r\n }\r\n\r\n onClickOutsidee(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdownLng = false;\r\n }\r\n }\r\n\r\n onClickOutsideMarkets(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdownMarkets = false;\r\n }\r\n }\r\n\r\n goToMarket(market: any) {\r\n let url = market.url;\r\n this.loader = true;\r\n const currentProtocol = window.location.protocol;\r\n if (url.indexOf(\"http\") == -1 && url.indexOf(\"https\") == -1) {\r\n url = currentProtocol + \"//\" + url;\r\n }\r\n this.mcService.redirectToMarket().subscribe(\r\n (response: any) => {\r\n const token = response.token;\r\n window.location.href = url + '?token=' + token;\r\n },\r\n (error) => {\r\n window.location.href = url;\r\n }\r\n );\r\n }\r\n\r\n showFiles() {\r\n this.showMyFiles = !this.showMyFiles;\r\n if (this.showMyFiles)\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n this.language.myFiles || this.language.myFiles\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n SEARCH\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {{ link.link }}\r\n
\r\n
\r\n \r\n
\r\n {{ language.brands }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ language.myFiles || language.myFiles }} ({{\r\n cart ? cart.length || 0 : 0\r\n }})\r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n {{ currentMarket == null ? 'Markets' : currentMarket.marketName }}\r\n
\r\n
\r\n
\r\n
\r\n {{ market.marketName }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
1\">\r\n
\r\n {{ activeLng }}\r\n
\r\n
\r\n
\r\n
\r\n {{ lng.label }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, ElementRef, Input, OnInit, ViewChild } from \"@angular/core\";\r\nimport { LayoutModel } from \"../layout/layout-model\";\r\nimport { ActivatedRoute, NavigationEnd, Params, Router } from \"@angular/router\";\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { McService } from \"../shared/services/mc-service\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { MetaModel } from \"../models/meta/meta\";\r\nimport { Meta, Title } from \"@angular/platform-browser\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { CommunicationService } from \"../shared/services/communication.service\";\r\nimport { ButtonsHelper } from \"../shared/helpers/buttons-helper\";\r\nimport { MyFilesService } from \"../shared/services/my-files.service\";\r\nimport { GoogleAnalyticsEventsService } from \"../shared/services/google-analytics-events.service\";\r\nimport { SearchComponent } from \"./search/search.component\";\r\nimport { MyFilesModel } from \"../shared/services/my-files-model\";\r\n\r\n@Component({\r\n selector: \"app-header-3\",\r\n templateUrl: \"./header-3.component.html\",\r\n styleUrls: [\"./header-3.component.less\"],\r\n})\r\nexport class HeaderComponent3 implements OnInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n @Input() metadatas: MetaModel[];\r\n @ViewChild('appSearch') searchChild: SearchComponent;\r\n @ViewChild(\"logoFlag\") logoFlag: ElementRef;\r\n styles: PageStyle;\r\n search: boolean;\r\n mobileNav: boolean;\r\n showDropdown: boolean;\r\n showMobDropdown: boolean;\r\n loggedUserName = \"\";\r\n mustRegister: boolean;\r\n anonymousShare: boolean;\r\n cms: any;\r\n user: any;\r\n loader: boolean;\r\n loginActive = false;\r\n loginColor: any;\r\n signinActive = false;\r\n signinColor: any;\r\n logo = \"\";\r\n language: Language;\r\n mobileLanguageDropdown = false;\r\n brandsColor: any;\r\n brandsActive = false;\r\n showDropdownLng = false;\r\n activeLng = \"English\";\r\n sLng: number;\r\n fromBrandsUrl: string;\r\n biggerLogo = false;\r\n invertColors = true;\r\n socialLinkObjects: any;\r\n showMyFiles: boolean = false;\r\n buttonsHelper = ButtonsHelper;\r\n cart: MyFilesModel = new MyFilesModel([], []);\r\n loggedUserEmail: any;\r\n markets = [];\r\n\r\n invertedHeaderRoutesExact: string[] = [\"/\", \"/home\", \"/about-us\", \"story\"];\r\n invertedHeaderRoutesPartial: string[] = [\"story\"];\r\n\r\n constructor(\r\n private router: Router,\r\n private mcService: McService,\r\n private authService: TokenManagerService,\r\n private languageService: LanguageService,\r\n private titleService: Title,\r\n private meta: Meta,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private communicationsService: CommunicationService,\r\n private storageService: StorageService,\r\n private myFilesService: MyFilesService,\r\n private googleAnalytics: GoogleAnalyticsEventsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.myFilesService.files.subscribe((myFiles) => {\r\n this.cart = myFiles;\r\n });\r\n if (this.router.url.indexOf(\"brands\") > 0) {\r\n this.brandsActive = true;\r\n this.brandsColor = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n this.checkRouteForHeader();\r\n\r\n const component = this;\r\n this.communicationsService.fromBrands.subscribe((url: string) => {\r\n if (url) {\r\n setTimeout(() => {\r\n url = url.replace(/%2F/, \"/\");\r\n url = url.replace(/%2F/, \"/\");\r\n url = url.replace(/%3A/, \":\");\r\n component.fromBrandsUrl = url;\r\n });\r\n }\r\n });\r\n\r\n this.languageService.languageId.subscribe((languageId: number) => {\r\n this.sLng = languageId;\r\n this.getLng(this.sLng);\r\n });\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n\r\n this.storageService.getMustRegister().subscribe((mustRegister) => {\r\n component.mustRegister = mustRegister;\r\n });\r\n this.storageService.getAnonymousShare().subscribe((anonymousShare) => {\r\n component.anonymousShare = anonymousShare;\r\n });\r\n }\r\n\r\n checkRouteForHeader() {\r\n this.checkIsInvertedHeader(this.router.url);\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.checkIsInvertedHeader(event.url);\r\n }\r\n });\r\n }\r\n\r\n checkIsInvertedHeader(route: string) {\r\n const oneExact = this.invertedHeaderRoutesExact.some((r) => r == route);\r\n const onePartial = this.invertedHeaderRoutesPartial.some(\r\n (r) => route.indexOf(r) > 0\r\n );\r\n this.invertColors = oneExact || onePartial;\r\n }\r\n\r\n currentMarket;\r\n\r\n ngOnInit() {\r\n var actualWebsite: String = window.location.origin;\r\n\r\n this.cart = this.myFilesService.getMyFiles();\r\n this.language = this.languageService.getLanguage();\r\n\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.getLng(this.sLng);\r\n\r\n this.storageService.getName().subscribe((term) => {\r\n this.loggedUserName = term;\r\n this.showDropdown = false;\r\n this.user = TokenManagerService.getUser();\r\n this.loggedUserEmail = this.user.email;\r\n });\r\n this.user = TokenManagerService.getUser();\r\n this.loggedUserName = this.user.fullName;\r\n this.loggedUserEmail = this.user.email;\r\n\r\n this.search = false;\r\n this.mobileNav = false;\r\n\r\n this.socialLinkObjects = JSON.parse(\r\n this.layoutResponseModel.socialLinkJson\r\n );\r\n if (\r\n this.socialLinkObjects !== null &&\r\n this.socialLinkObjects !== undefined\r\n ) {\r\n this.socialLinkObjects = this.socialLinkObjects.map((o) => {\r\n o.name = o.name.toLowerCase();\r\n o.link = this.checkLinkPrefix(o.link);\r\n return o;\r\n });\r\n } else {\r\n this.socialLinkObjects = [];\r\n }\r\n this.mcService.getMarkets().subscribe((markets: any) => {\r\n this.markets = markets;\r\n //check according to current url which market is active, ignoring cases, protocol and www, query params, everything after /, just the domain\r\n let currentDomain = window.location.href.toLowerCase();\r\n currentDomain = currentDomain.replace(/(^\\w+:|^)\\/\\//, \"\");\r\n currentDomain = currentDomain.replace(/www./, \"\");\r\n currentDomain = currentDomain.replace(/\\/.*/, \"\");\r\n this.markets.forEach((market) => {\r\n let marketUrl = market.url.toLowerCase();\r\n marketUrl = marketUrl.replace(/(^\\w+:|^)\\/\\//, \"\");\r\n marketUrl = marketUrl.replace(/www./, \"\");\r\n marketUrl = marketUrl.replace(/\\/.*/, \"\");\r\n if (marketUrl === currentDomain) {\r\n this.currentMarket = market;\r\n }\r\n });\r\n });\r\n }\r\n\r\n closeMyFiles(event) {\r\n if (event.target.id !== \"myFilesNav\") this.showMyFiles = false;\r\n }\r\n\r\n openMyFiles() {\r\n this.closeNav();\r\n this.showMyFiles = true;\r\n }\r\n\r\n checkLinkPrefix(link: string) {\r\n if (link.includes(\"http://\") || link.includes(\"https://\")) {\r\n return link;\r\n } else {\r\n return `http://${link}`;\r\n }\r\n }\r\n\r\n onLoad() {\r\n const width = (this.logoFlag.nativeElement as HTMLImageElement)\r\n .naturalWidth;\r\n const height = (this.logoFlag.nativeElement as HTMLImageElement)\r\n .naturalHeight;\r\n\r\n if (width > 4 * height) {\r\n this.biggerLogo = true;\r\n } else {\r\n this.biggerLogo = false;\r\n }\r\n }\r\n\r\n getLng(languageId) {\r\n if (this.layoutResponseModel) {\r\n for (let i = 0; i < this.layoutResponseModel.languages.length; i++) {\r\n if (languageId == this.layoutResponseModel.languages[i].id) {\r\n this.activeLng = this.layoutResponseModel.languages[i].label;\r\n }\r\n if (languageId == 0) {\r\n this.activeLng = \"English\";\r\n }\r\n }\r\n }\r\n }\r\n\r\n translate(id, label) {\r\n this.loader = true;\r\n this.activeLng = label;\r\n\r\n this.languageService.setLanguageId(id);\r\n\r\n this.router.navigateByUrl(\"/home\");\r\n location.reload();\r\n }\r\n\r\n changeColor(e, color, link) {\r\n if (link && !link.active) {\r\n e.target.style.color = color;\r\n }\r\n }\r\n\r\n changeColorr(e, link) {\r\n if (link && !link.active) {\r\n e.target.style.color = this.styles.style.textLinkHoverColor;\r\n }\r\n }\r\n\r\n changeColorCustomLink(e, color) {\r\n if (!this.brandsActive) {\r\n e.target.style.color = \"#3a3a3a\";\r\n }\r\n }\r\n\r\n changeColorrCustomLink(e, link) {\r\n if (!this.brandsActive) {\r\n e.target.style.color = this.styles.style.textLinkHoverColor;\r\n }\r\n }\r\n\r\n changeColorLinkBack(e, color) {\r\n e.target.style.color = this.styles.style.textH2Color;\r\n }\r\n\r\n changeColorLink(e) {\r\n e.target.style.color = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n redirectToCms() {\r\n this.mcService.redirectToCms(this.user.cmsUser).subscribe(\r\n (response: any) => {\r\n window.open(environment.cmsUrl + response.token, \"_blank\");\r\n },\r\n (error) => {\r\n console.error(error);\r\n }\r\n );\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n this.user = TokenManagerService.getUser();\r\n this.myFilesService.setMyFiles(this.myFilesService.getFiles());\r\n this.loggedUserName = this.user.fullName;\r\n this.loggedUserEmail = this.user.email;\r\n if (this.mustRegister) {\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n }\r\n\r\n showProfile() {\r\n this.showDropdown = !this.showDropdown;\r\n }\r\n\r\n showLanguage() {\r\n this.showDropdownLng = !this.showDropdownLng;\r\n }\r\n\r\n showDropdownMarkets: boolean = false;\r\n\r\n showMarkets() {\r\n this.showDropdownMarkets = !this.showDropdownMarkets;\r\n }\r\n\r\n showMobileLanguage() {\r\n this.mobileLanguageDropdown = !this.mobileLanguageDropdown;\r\n }\r\n\r\n showMobileProfile() {\r\n this.showMobDropdown = !this.showMobDropdown;\r\n }\r\n\r\n editProfile() {\r\n this.router.navigateByUrl(\"/profile\");\r\n }\r\n\r\n reroute(url) {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.brandsActive = false;\r\n this.brandsColor = this.styles.style.textHeaderColor;\r\n const index = this.layoutResponseModel.headerLinks.indexOf(url);\r\n if (url.url.indexOf(\"http\") > -1) {\r\n window.open(url.url, \"_blank\");\r\n } else {\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.router.navigateByUrl(url.url);\r\n url.active = true;\r\n }\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n url.link\r\n );\r\n }\r\n\r\n activeLink() {\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.headerLinks.forEach((x) => {\r\n if (\"/\" + x.url === \"/home\") {\r\n x.active = true;\r\n } else {\r\n x.active = false;\r\n }\r\n });\r\n }\r\n\r\n rerouteToLogin(text: string) {\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n this.googleAnalytics.emitEvent(\"MenuClick\", \"MenuOption\", text);\r\n }\r\n\r\n rerouteToBrands() {\r\n this.brandsActive = true;\r\n this.brandsColor = this.styles.style.mainIdentifyingColor;\r\n this.layoutResponseModel.headerLinks.forEach((x) => (x.active = false));\r\n this.layoutResponseModel.footerLinks.forEach((x) => (x.active = false));\r\n }\r\n\r\n showSearch() {\r\n this.search = true;\r\n this.searchChild?.wipeSearch();\r\n const input = document.getElementById(\"story-search-big\");\r\n setTimeout(() => {\r\n input.focus();\r\n }, 250);\r\n const body = document.getElementsByTagName(\"body\")[0];\r\n body.style.position = \"fixed\";\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n this.language.search\r\n );\r\n }\r\n\r\n openMobileNav() {\r\n this.mobileNav = true;\r\n }\r\n\r\n closeNav() {\r\n this.mobileNav = false;\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdown = false;\r\n }\r\n }\r\n\r\n onClickOutsidee(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdownLng = false;\r\n }\r\n }\r\n\r\n onClickOutsideMarkets(event: Object) {\r\n if (event && event[\"value\"] === true) {\r\n this.showDropdownMarkets = false;\r\n }\r\n }\r\n\r\n goToMarket(market: any) {\r\n let url = market.url;\r\n this.loader = true;\r\n const currentProtocol = window.location.protocol;\r\n if (url.indexOf(\"http\") == -1 && url.indexOf(\"https\") == -1) {\r\n url = currentProtocol + \"//\" + url;\r\n }\r\n this.mcService.redirectToMarket().subscribe(\r\n (response: any) => {\r\n const token = response.token;\r\n window.location.href = url + '?token=' + token;\r\n },\r\n (error) => {\r\n window.location.href = url;\r\n }\r\n );\r\n }\r\n\r\n showFiles() {\r\n this.showMyFiles = !this.showMyFiles;\r\n if (this.showMyFiles)\r\n this.googleAnalytics.emitEvent(\r\n \"MenuClick\",\r\n \"MenuOption\",\r\n this.language.myFiles || this.language.myFiles\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n SEARCH\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {{ link.link }}\r\n
\r\n
\r\n \r\n
\r\n {{ language.brands }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n {{ language.myFiles || language.myFiles }} ({{\r\n cart ? cart.length || 0 : 0\r\n }})\r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n {{ currentMarket == null ? 'Markets' : currentMarket.marketName }}\r\n
\r\n
\r\n
\r\n
\r\n {{ market.marketName }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
1\">\r\n
\r\n {{ activeLng }}\r\n
\r\n
\r\n
\r\n
\r\n {{ lng.label }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class WebpHelperService {\r\n constructor() {}\r\n\r\n changeFileToWebP(url: string): string {\r\n if (url == null || url == undefined) return \"\";\r\n return url.replace(/\\.[^/.]+$/, \".webp\");\r\n }\r\n\r\n removeWebP(event): void {\r\n const target = event.target;\r\n const parent = target.parentElement;\r\n const imgElement = parent.querySelector(\"img\");\r\n\r\n if (parent.children[0].type == \"image/webp\") {\r\n parent.children[0].remove();\r\n } else if (parent.children[0].type == \"image/jpeg\") {\r\n parent.children[0].remove();\r\n imgElement.classList.add(\"document-overlay\");\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({name: 'replace'})\r\n\r\nexport class ReplacePipe implements PipeTransform {\r\n transform(value: string, strToReplace: string, replacementStr: string): string {\r\n\r\n if(!value || ! strToReplace || ! replacementStr)\r\n {\r\n return value;\r\n }\r\n\r\n return value.replace(new RegExp(strToReplace, 'g'), replacementStr);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Subject } from \"rxjs\";\r\n\r\n@Injectable()\r\nexport class CommunicationService {\r\n\r\n public fromBrands: BehaviorSubject = new BehaviorSubject(false);\r\n\r\n private _data;\r\n set data(value) {\r\n this._data = value;\r\n }\r\n get data() {\r\n return this._data;\r\n }\r\n\r\n setFromBrands(url: string) {\r\n this.fromBrands.next(url);\r\n }\r\n public fixedWrapper: BehaviorSubject = new BehaviorSubject(false);\r\n\r\n}\r\n\r\n\r\n\r\n\r\n","import { WebNewsModel } from '../../../routes/news/news-model';\r\nimport { WebManageMediaModel } from '../../../download/download-model';\r\n\r\nexport class SearchModel {\r\n public subClients: ClientLookupModel[];\r\n public mainCategories: BaseLookupModel[];\r\n public customCategories: CustomCategoryLookupModel[];\r\n public searchModel: WebSearchModel;\r\n public hasCustomCategories: boolean;\r\n public hasMainCategories: boolean;\r\n\r\n\r\n constructor() {\r\n this.searchModel = new WebSearchModel();\r\n this.subClients = [];\r\n }\r\n}\r\n\r\nexport class ClientLookupModel {\r\n public parentId: number;\r\n public id: number;\r\n public label: string;\r\n\r\n //added new properties\r\n public checked: boolean;\r\n}\r\n\r\nexport class BaseLookupModel {\r\n public id: number;\r\n public label: string;\r\n\r\n //added new properties\r\n public checked: boolean;\r\n}\r\n\r\nexport class CustomCategoryLookupModel {\r\n public parentId: number;\r\n public mainCategoryId: number;\r\n public clientId: number;\r\n public id: number;\r\n public label: string;\r\n\r\n //added new properties\r\n public marked: boolean;\r\n}\r\n\r\nexport class WebSearchModel {\r\n public stories: boolean;\r\n public media: boolean;\r\n public images: boolean;\r\n public video: boolean;\r\n public document: boolean;\r\n public audio: boolean;\r\n public dateFrom: string;\r\n public dateTo: string;\r\n public searchText: string;\r\n public mainCategoryIds: number[];\r\n public customCategoryIds: number[];\r\n public subClientIds: number[];\r\n public page: number;\r\n public pageSize: number;\r\n public languageId: number;\r\n\r\n constructor() {\r\n this.stories = true;\r\n this.media = true;\r\n this.images = true;\r\n this.video = false;\r\n this.document = false;\r\n this.audio = false;\r\n this.dateFrom = null;\r\n this.dateTo = null;\r\n this.searchText = '';\r\n this.customCategoryIds = [];\r\n this.mainCategoryIds = [];\r\n this.subClientIds = [];\r\n }\r\n}\r\n\r\nexport class SearchResultModel {\r\n public stories: WebNewsModel[];\r\n public media: WebManageMediaModel[];\r\n public mustRegisterToAccess: boolean;\r\n public mustRegisterToDownload: boolean;\r\n}\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { LoginModel, NewPasswordModel } from \"../login-model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { ToastrConfig } from \"../../shared/helpers/toastr-config\";\r\n\r\n@Component({\r\n selector: \"app-reset-password-admin\",\r\n templateUrl: \"./reset-password-admin.component.html\",\r\n styleUrls: [\"./reset-password-admin.component.less\"],\r\n})\r\nexport class ResetPasswordAdminComponent implements OnInit {\r\n loggedUserName: string;\r\n passwordReset: boolean;\r\n valForm: FormGroup;\r\n loader = false;\r\n data = new NewPasswordModel();\r\n patternPassword = /^\\S*$/;\r\n confirmError: boolean;\r\n language: Language;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private languageService: LanguageService,\r\n private toastr: ToastrService,\r\n private activatedRoute: ActivatedRoute,\r\n private authLoginService: TokenManagerService,\r\n private router: Router,\r\n private sService: StorageService\r\n ) {\r\n this.valForm = this.fb.group({\r\n \"new-password\": [\r\n null,\r\n Validators.compose([\r\n Validators.required,\r\n Validators.pattern(this.patternPassword),\r\n ]),\r\n ],\r\n confirmpassword: [null, Validators.required],\r\n });\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n const userId = params[\"id\"];\r\n this.data.resetCode = userId;\r\n\r\n this.authLoginService\r\n .checkPasswordCodeAdmin(this.data.resetCode)\r\n .subscribe(\r\n (response: any) => {\r\n const body: string = response;\r\n\r\n if (body === \"null\") {\r\n this.toastr.error('Reset link has already been used.', 'Error', ToastrConfig.error);\r\n this.router.navigate([\"./sign-in\"]);\r\n }\r\n },\r\n (error) => {\r\n //\r\n this.toastr.error('An error occurred while trying to reset password.', 'Error', ToastrConfig.error);\r\n }\r\n );\r\n });\r\n\r\n // this.authLoginService.checkAuthentication(this.data.resetCode)\r\n // .subscribe(\r\n // (response) => {\r\n //\r\n // }, (error) => {\r\n // const toast: Toast = {\r\n // type: 'error',\r\n // title: 'Error',\r\n // body: 'Reset link has already been used.',\r\n // showCloseButton: true,\r\n // timeout: 5000,\r\n // closeHtml: '
'\r\n // };\r\n //\r\n // this.toasterService.pop(toast);\r\n // this.router.navigate(['./login']);\r\n // }\r\n // );\r\n }\r\n\r\n checkPassword() {\r\n if (\r\n this.valForm.controls[\"new-password\"].value ===\r\n this.valForm.controls[\"confirmpassword\"].value\r\n ) {\r\n this.confirmError = false;\r\n }\r\n }\r\n\r\n reset(e, data) {\r\n e.stopPropagation();\r\n\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n if (this.valForm.valid) {\r\n this.authLoginService.resetPasswordAdmin(data).subscribe(\r\n (response: any) => {\r\n //\r\n this.toastr.success('Password changed successfully!', 'Well done!', ToastrConfig.success);\r\n\r\n this.passwordReset = true;\r\n\r\n const loginModel = new LoginModel();\r\n loginModel.email = response.json().email;\r\n loginModel.password = data.newPassword;\r\n\r\n this.authLoginService.login(loginModel).subscribe(\r\n (res) => {\r\n this.loader = false;\r\n this.loggedUserName = TokenManagerService.getUser().fullName;\r\n // this.isPassowordSet = TokenManagerService.getUser().isPasswordSet;\r\n this.sService.setName(this.loggedUserName);\r\n // this.sService.setPw(this.isPassowordSet);\r\n // this.router.navigate(['/profile']);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n\r\n // this.router.navigate(['/login']);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n

Reset password

\r\n
\r\n
\r\n \r\n \r\n \r\n New password is required\r\n \r\n \r\n {{ language.passwordNoSpaces }}\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.confirmPasswordRequired }}\r\n \r\n Passwords\r\n do not match.\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Welcome, {{loggedUserName}}

\r\n

Your password has been reset.

\r\n \r\n \r\n \r\n
\r\n
\r\n
","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {FormBuilder, FormGroup, Validators} from '@angular/forms';\r\nimport {EmailModel} from '../login-model';\r\nimport {TokenManagerService} from '../../shared/services/token-manager.service';\r\nimport {CustomValidators} from 'ng2-validation';\r\nimport {PageStyle} from '../../models/style/style.model';\r\nimport {FontsAndColorsService} from '../../shared/services/fonts-and-colors.service';\r\nimport {Language} from '../../models/language/language.model';\r\nimport {LanguageService} from '../../shared/services/language.service';\r\n\r\n@Component({\r\n selector: 'app-email-popup',\r\n templateUrl: './email-popup.component.html',\r\n styleUrls: ['./email-popup.component.less']\r\n})\r\nexport class EmailPopupComponent implements OnInit {\r\n\r\n @Output() emailPopupChange = new EventEmitter();\r\n @Output() resetPasswordChange = new EventEmitter();\r\n @Output() loginViewChange = new EventEmitter();\r\n @Input() emailPopup: boolean;\r\n @Input() resetPassword: boolean;\r\n @Input() loginView: boolean;\r\n valForm: FormGroup;\r\n data = new EmailModel();\r\n notSend = true;\r\n checkEmail = false;\r\n maiLSent: boolean;\r\n styles = new PageStyle();\r\n language: Language;\r\n\r\n constructor(private fb: FormBuilder, private languageService: LanguageService, private authLoginService: TokenManagerService,public fontsAndColorsService: FontsAndColorsService) {\r\n this.valForm = this.fb.group({\r\n 'emailforpassword': [null, Validators.compose([Validators.required, CustomValidators.email])]\r\n });\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n }\r\n\r\n\r\n ngOnInit() {\r\n }\r\n\r\n close() {\r\n this.emailPopupChange.emit(false);\r\n }\r\n\r\n sendEmail(e, data) {\r\n e.stopPropagation();\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n if (this.valForm.valid) {\r\n this.maiLSent = true;\r\n this.authLoginService.ForgotPassword(data.email)\r\n .subscribe(\r\n (response) => {\r\n this.notSend = false;\r\n if(response){\r\n }\r\n },\r\n (error) => {\r\n this.checkEmail = true;\r\n this.maiLSent = false;\r\n //\r\n }\r\n );\r\n /* this.emailPopupChange.emit(false);\r\n this.resetPasswordChange.emit(true);\r\n this.loginViewChange.emit(false);*/\r\n }\r\n\r\n }\r\n}\r\n","
\r\n
\r\n
{{language.forgotPassword}}
\r\n

Please enter your email and we will send you a link to reset your password.

\r\n
\r\n
\r\n \r\n
\r\n {{ language.emailNameRequired }}\r\n
\r\n
\r\n {{ language.invalidEmail }}\r\n
\r\n
\r\n There is no user registered with this email.\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Recovery instructions are sent. Please check your email.

\r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport { GoogleAnalyticsEventsService } from \"./google-analytics-events.service\";\r\n\r\n@Injectable() export class OutBoundLinkClickInterceptService {\r\n\r\n constructor(private googleAnalytics: GoogleAnalyticsEventsService) {\r\n document.onclick = this.interceptHref;\r\n }\r\n\r\n interceptHref = (_event) => {\r\n\r\n const tEvent = _event || window.event;\r\n let element = tEvent.target || tEvent.srcElement;\r\n\r\n while (element.parentElement != null && element?.tagName != 'A' && element?.tagName != 'P') {\r\n element = element.parentElement;\r\n }\r\n\r\n const linkedClicked = element?.tagName == 'A'\r\n if (linkedClicked && element.href.trim() != '') {\r\n const externalUrl = new URL(element.href).origin !== location.origin;\r\n if (externalUrl) {\r\n this.googleAnalytics.emitEvent('ClickExternalLink', 'ClickLinks', 'ExternalLink', element.textContent + \" \" + element.href);\r\n }\r\n }\r\n\r\n }\r\n} ","\r\nimport { map, take } from 'rxjs/operators';\r\nimport { Component, OnInit } from \"@angular/core\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { UserAuthModel } from \"../login-model\";\r\nimport { MyFilesService } from '../../shared/services/my-files.service';\r\nimport { StorageService } from '../../shared/services/storage.service';\r\n\r\n@Component({\r\n selector: \"app-check-authentication\",\r\n templateUrl: \"./check-authentication.component.html\",\r\n styleUrls: [\"./check-authentication.component.less\"],\r\n})\r\nexport class CheckAuthenticationComponent implements OnInit {\r\n data = new UserAuthModel();\r\n isAuthenticated: any;\r\n\r\n constructor(\r\n private authLoginService: TokenManagerService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private myFilesService: MyFilesService,\r\n private sService: StorageService\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n let userId = params[\"id\"];\r\n this.data.code = userId;\r\n });\r\n this.authLoginService.checkAuthentication(this.data).subscribe(\r\n (response) => {\r\n const loggedUserName = TokenManagerService.getUser().fullName;\r\n this.sService.setName(loggedUserName);\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n if (response) {\r\n this.isAuthenticated = true;\r\n }\r\n if (this.isAuthenticated != undefined) {\r\n setTimeout(() => {\r\n this.redirect();\r\n }, 5000);\r\n }\r\n },\r\n (error) => {\r\n this.isAuthenticated = false;\r\n }\r\n );\r\n }\r\n\r\n redirect() {\r\n this.router.navigateByUrl(\"/\");\r\n }\r\n}\r\n","
\r\n
\r\n

Success

\r\n

Error

\r\n

You have verified your account. We will redirect you to home page in {{countDown | async}} or you can click here.

\r\n\r\n

You have already verified your account.

\r\n
\r\n
\r\n\r\n","\r\nimport {fromEvent as observableFromEvent, Observable } from 'rxjs';\r\nimport {\r\n Directive,\r\n OnInit,\r\n OnDestroy,\r\n Output,\r\n EventEmitter,\r\n ElementRef,\r\n} from \"@angular/core\";\r\nimport { delay, tap } from \"rxjs/operators\";\r\n\r\n@Directive({\r\n selector: \"[appClickOutside]\",\r\n})\r\nexport class ClickOutsideDirective implements OnInit, OnDestroy {\r\n private listening: boolean;\r\n private globalClick: any;\r\n\r\n @Output(\"clickOutside\") clickOutside: EventEmitter;\r\n\r\n constructor(private _elRef: ElementRef) {\r\n this.listening = false;\r\n this.clickOutside = new EventEmitter();\r\n }\r\n\r\n ngOnInit() {\r\n this.globalClick = observableFromEvent(document, \"click\")\r\n .pipe(\r\n delay(1),\r\n tap(() => {\r\n this.listening = true;\r\n })\r\n )\r\n\r\n .subscribe((event: MouseEvent) => {\r\n this.onGlobalClick(event);\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.globalClick.unsubscribe();\r\n }\r\n\r\n onGlobalClick(event: MouseEvent) {\r\n if (event instanceof MouseEvent && this.listening === true) {\r\n if (this.isDescendant(this._elRef.nativeElement, event.target) === true) {\r\n this.clickOutside.emit({\r\n target: event.target || null,\r\n value: false,\r\n });\r\n } else {\r\n this.clickOutside.emit({\r\n target: event.target || null,\r\n value: true,\r\n });\r\n }\r\n }\r\n }\r\n\r\n isDescendant(parent, child) {\r\n let node = child;\r\n while (node !== null) {\r\n if (node === parent) {\r\n return true;\r\n } else {\r\n node = node.parentNode;\r\n }\r\n }\r\n return false;\r\n }\r\n}\r\n","import {DownloadMediaModel, WebManageMediaModel} from '../../../download/download-model';\r\n\r\nexport class PopupModel {\r\n public media: WebManageMediaModel;\r\n public downloadLinks: DownloadMediaModel[];\r\n public alsoIn: boolean;\r\n public alsoInTitle: string;\r\n public alsoInShortDescription: string;\r\n public socialSharing: string[];\r\n public mustRegisterToDownload: boolean;\r\n public mustRegisterToAccess: boolean;\r\n public anonymousShare: boolean;\r\n public alsoInStoryLink?: string;\r\n public shareUrl?: string;\r\n public shareTitle?: string;\r\n public shareShortDescription?: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequestService } from \"./http-request.service\";\r\nimport { environment } from '../../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DeleteAccountService {\r\n\r\n constructor(private http: HttpRequestService) { }\r\n\r\n deleteAccount(password: string) {\r\n const data = {\r\n password: password\r\n }\r\n return this.http.post(environment.apiUrl + '/mediacenteruser/deleteuser', data);\r\n }\r\n}\r\n","import {Injectable} from \"@angular/core\";\r\n@Injectable()\r\nexport class ErrorService {\r\n\r\n\r\n private error: any;\r\n\r\n setError(error) {\r\n this.error = error;\r\n }\r\n\r\n getError() {\r\n return this.error;\r\n }\r\n}\r\n","import {BaseLookupModel, CustomCategoryLookupModel} from '../header/search/search-model';\r\n\r\nexport class RegisterModel {\r\n public mediaUserModel: UserManageModel;\r\n public userGroups: EnumModel[];\r\n public customCatogories: CustomCategoryLookupModel[];\r\n public languages: BaseLookupModel[];\r\n public registrationInfoModel: RegistrationInfoModel;\r\n\r\n constructor() {\r\n this.mediaUserModel = new UserManageModel();\r\n }\r\n}\r\n\r\nexport class EnumModel{\r\n public id: string;\r\n public name: string;\r\n\r\n //added new properties\r\n public checked: boolean;\r\n}\r\n\r\n\r\nexport class UserManageModel {\r\n public id: number;\r\n public firstName: string;\r\n public lastName: string;\r\n public email: string;\r\n public password: string;\r\n public confirmPassword: string;\r\n public telephoneNumber: number;\r\n public companyName: string;\r\n public facebookToken: string;\r\n public facebookLink: string;\r\n public twitterAuthorizationVerifier: string;\r\n public twitterAuthorizationId: string;\r\n public twitterLink: string;\r\n public linkedInLink: string;\r\n public mediaUserTypes: string[];\r\n public instagramLink: string;\r\n public youTubeLink: string;\r\n public wordPressLink: string;\r\n public receiveNewsletter: boolean;\r\n public termsAndConditions: boolean;\r\n public customCategoryIds: number[];\r\n public languageIds: number[];\r\n\r\n constructor() {\r\n this.id = 0;\r\n this.firstName = '';\r\n this.lastName = '';\r\n this.email = '';\r\n this.password = '';\r\n this.telephoneNumber;\r\n this.companyName = '';\r\n this.facebookToken = '';\r\n this.facebookLink = '';\r\n this.twitterLink = '';\r\n this.linkedInLink = '';\r\n this.instagramLink = '';\r\n this.youTubeLink = '';\r\n this.wordPressLink = '';\r\n this.receiveNewsletter = false;\r\n this.customCategoryIds = [];\r\n this.languageIds = [];\r\n }\r\n}\r\n\r\nexport class RegistrationInfoModel {\r\n public registerNotificationText: string;\r\n public registerTermsQuestion: string;\r\n public registerNotificationQuestion: string;\r\n\r\n constructor() {\r\n this.registerNotificationText = '';\r\n this.registerNotificationQuestion = '';\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Subject } from \"rxjs/internal/Subject\";\r\nimport { Consent } from \"../../models/consent/consent.model\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class UserCentricsService {\r\n private consents: Consent = new Consent();\r\n private consentSubject: Subject = new Subject();\r\n private ga4Id = \"G-RQWSC8YPM4\";\r\n\r\n constructor() {}\r\n\r\n setConsents(consentsFromEvent: any) {\r\n const newConsents: Consent = { ...this.consents };\r\n newConsents.googleAnalytics = consentsFromEvent[\"Google Analytics\"];\r\n newConsents.googleTagManager = consentsFromEvent[\"Google Tag Manager\"];\r\n newConsents.facebookSocialPlugins =\r\n consentsFromEvent[\"Facebook Social Plugins\"];\r\n newConsents.UsercentricsConsentManagementPlatform =\r\n consentsFromEvent[\"Usercentrics Consent Management Platform\"];\r\n this.consents = newConsents;\r\n this.consentSubject.next(this.consents);\r\n if (this.isAnalyticsConsented()) this.initializeAnalytics();\r\n else this.destroyAnalytics();\r\n if (this.isFBConsented()) this.initializeFB();\r\n else this.destroyFB();\r\n }\r\n\r\n isAnalyticsConsented() {\r\n return this.consents.googleAnalytics && this.consents.googleTagManager;\r\n }\r\n\r\n updateGA4Id(newId) {\r\n if (newId != this.ga4Id) {\r\n this.ga4Id = newId;\r\n this.destroyAnalytics();\r\n this.initializeAnalytics();\r\n }\r\n }\r\n\r\n initializeAnalytics() {\r\n if (\r\n window &&\r\n document &&\r\n !document.getElementById(\"gtag1\") &&\r\n !document.getElementById(\"gtag2\")\r\n ) {\r\n const script1 = document.createElement(\"script\");\r\n script1.id = \"gtag1\";\r\n script1.src = \"https://www.googletagmanager.com/gtag/js?id=\" + this.ga4Id;\r\n script1.async = true;\r\n\r\n document.head.appendChild(script1);\r\n\r\n const script2 = document.createElement(\"script\");\r\n script2.id = \"gtag2\";\r\n script2.innerHTML = `\r\n window.dataLayer = window.dataLayer || [];\r\n function gtag(){dataLayer.push(arguments);}\r\n gtag('js', new Date());\r\n gtag('config', '${this.ga4Id}');\r\n `;\r\n\r\n document.head.appendChild(script2);\r\n }\r\n }\r\n\r\n destroyAnalytics() {\r\n if (\r\n document &&\r\n document.getElementById(\"gtag1\") &&\r\n document.getElementById(\"gtag2\")\r\n ) {\r\n var parentHead = document.head;\r\n var gtag1 = document.getElementById(\"gtag1\");\r\n var gtag2 = document.getElementById(\"gtag2\");\r\n parentHead.removeChild(gtag1);\r\n parentHead.removeChild(gtag2);\r\n }\r\n }\r\n\r\n isFBConsented() {\r\n return this.consents.facebookSocialPlugins;\r\n }\r\n\r\n initializeFB() {\r\n if (window && document && !document.getElementById(\"fbScript\")) {\r\n // Create the script element\r\n var script = document.createElement(\"script\");\r\n script.id = \"fbScript\";\r\n script.type = \"text/javascript\";\r\n script.src = \"https://connect.facebook.net/en_US/sdk.js\";\r\n\r\n // Append the script element to the document head\r\n document.head.appendChild(script);\r\n }\r\n }\r\n\r\n destroyFB() {\r\n if (document && document.getElementById(\"fbScript\")) {\r\n var parentHead = document.head;\r\n var fbScript = document.getElementById(\"fbScript\");\r\n parentHead.removeChild(fbScript);\r\n }\r\n }\r\n}\r\n","import { Injectable, Injector } from \"@angular/core\";\r\nimport { TokenManagerService } from \"./token-manager.service\";\r\nimport { HttpEvent, HttpHandler, HttpRequest } from \"@angular/common/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from \"../../../environments/environment\";\r\n\r\n@Injectable()\r\nexport class AuthInterceptorService {\r\n /*constructor(private auth: TokenManagerService) {\r\n }*/\r\n\r\n constructor() {\r\n }\r\n\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n //\r\n //\r\n\r\n //const auth: any = this.inj.get(TokenManagerService);\r\n //Don't add Authorization to media blob request\r\n if (req.url.indexOf(environment.mediaUrl) > -1) {\r\n return next.handle(req);\r\n }\r\n\r\n // Get the auth header from the service.\r\n let authHeader = TokenManagerService.getToken();\r\n if (!authHeader) authHeader = \"\";\r\n\r\n // Clone the request to add the new header.\r\n const authReq = req.clone({\r\n headers: req.headers.set(\"Authorization\", authHeader),\r\n });\r\n // Pass on the cloned request instead of the original request.\r\n return next.handle(authReq);\r\n }\r\n}\r\n","import { SafeHtml } from \"@angular/platform-browser\";\r\n\r\nexport class HomeModel {\r\n public featuredStories: FeaturedStoriesModel[];\r\n public allStories: LatestStoriesModel[];\r\n public latesStoryGridType: string;\r\n public mustRegisterToAccess: boolean;\r\n public mustRegisterToDownload: boolean;\r\n public title: string;\r\n public bodyText: string;\r\n public additionalBodyText: string;\r\n public latestStories: LatestStoriesModel[];\r\n public latestStoriesCategory: LatestStoriesCategoryModel[];\r\n public latestMedia: LatestMediaModel[];\r\n public socialSharing: string[];\r\n public socialFeeds: SocialModel[];\r\n public testimonials: TestimonialsModel[];\r\n public homeLatestMediaImage: boolean;\r\n public homeLatestMediaVideo: boolean;\r\n public homeLatestMediaDocument: boolean;\r\n public homeLatestMediaAudio: boolean;\r\n public homeShowTestimonials: boolean;\r\n public hideCounters: boolean;\r\n public filteredStories: LatestStoriesModel[];\r\n}\r\n\r\nexport class FeaturedStoriesModel {\r\n public storyId: number;\r\n public audio: number;\r\n public images: number;\r\n public video: number;\r\n public document: number;\r\n public publishedDate: string;\r\n public category: string[];\r\n public storyTitle: string;\r\n public thumbUrl: string;\r\n public fullHDUrl: string;\r\n public featuredEmbeddedCode: string;\r\n public embeddedCode: SafeHtml;\r\n public mediaType: string;\r\n public hideStoryDate: boolean;\r\n}\r\n\r\nexport class LatestStoriesModel {\r\n public staggingStoryId: number;\r\n public storyId: number;\r\n public audio: number;\r\n public images: number;\r\n public video: number;\r\n public document: number;\r\n public publishedDate: string;\r\n public category: string;\r\n public storyTitle: string;\r\n public thumbUrl: string;\r\n public fullHDUrl?: string;\r\n public featuredEmbeddedCode: string;\r\n public embeddedCode: SafeHtml;\r\n public shortDescription: string;\r\n public views: number;\r\n public shared: number;\r\n public hideStoryDate: boolean;\r\n\r\n //added new properties\r\n public shareDropdown: boolean;\r\n public dropdown: boolean;\r\n}\r\n\r\nexport class LatestStoriesCategoryModel {\r\n public category: string;\r\n public latestStories: LatestStoriesModel[];\r\n public gridType: string;\r\n}\r\n\r\nexport class LatestMediaModel {\r\n public mediaId: number;\r\n public mediaType: string;\r\n public thumbUrl: string;\r\n public fullHDUrl: string;\r\n public title: string;\r\n\r\n //added new properties\r\n public overlay: boolean;\r\n}\r\n\r\nexport class SocialModel {\r\n public name: string;\r\n public imageUrl: string;\r\n public nickname: string;\r\n public text: string;\r\n public date: string;\r\n}\r\n\r\nexport class TestimonialsModel {\r\n public name: string;\r\n public imageUrl: string;\r\n public clientLogoUrl: string;\r\n public text: string;\r\n public date: string;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n HostListener,\r\n ElementRef,\r\n AfterViewInit,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../../shared/services/mc-service\";\r\nimport {\r\n ClientLookupModel,\r\n SearchModel,\r\n SearchResultModel,\r\n WebSearchModel,\r\n} from \"./results-search-model\";\r\nimport { Router } from \"@angular/router\";\r\nimport { StorageService } from \"../../../shared/services/storage.service\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../../shared/services/fonts-and-colors.service\";\r\nimport { LayoutModel } from \"../../../layout/layout-model\";\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\nimport { GoogleAnalyticsEventsService } from \"../../../shared/services/google-analytics-events.service\";\r\nimport { timeStamp } from \"console\";\r\n\r\n@Component({\r\n selector: \"app-results-search\",\r\n templateUrl: \"./results-search.component.html\",\r\n styleUrls: [\"./results-search.component.less\"],\r\n})\r\nexport class ResultsSearchComponent implements OnInit, AfterViewInit {\r\n @Input() layoutResponseModel: LayoutModel;\r\n @Input() search: boolean;\r\n @Output() searchChange = new EventEmitter();\r\n @Output() openDateFromEmitter = new EventEmitter();\r\n storiesAndMedia: boolean;\r\n stories: boolean;\r\n media: boolean;\r\n loader: boolean;\r\n language: Language;\r\n\r\n /*\r\n dateFrom: Date = new Date(new Date().setDate(new Date().getDate() - 31));\r\n dateTo: Date = new Date();\r\n */\r\n\r\n dateFrom: Date = null;\r\n dateTo: Date = null;\r\n\r\n dateFromButton: boolean;\r\n dateToButton: boolean;\r\n\r\n result: any;\r\n styles = new PageStyle();\r\n headerFooter: any;\r\n searchModelData = new SearchModel();\r\n searchResultResponse = new SearchResultModel();\r\n checked = false;\r\n checkedb = false;\r\n searchFrom = \"stories\";\r\n\r\n constructor(\r\n private mcService: McService,\r\n private languageService: LanguageService,\r\n private router: Router,\r\n private storageService: StorageService,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private elRef: ElementRef,\r\n private sanitizer: DomSanitizer,\r\n private googleAnalytics: GoogleAnalyticsEventsService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n @HostListener(\"document:keyup\", [\"$event\"])\r\n handleKeyboardEvent(event: KeyboardEvent) {\r\n if (event.keyCode === 27) {\r\n this.closeSearch();\r\n }\r\n if (event.keyCode === 13) {\r\n this.searchMc();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.headerFooter = JSON.parse(localStorage.getItem(\"headerfooter\"));\r\n this.getSearch();\r\n }\r\n\r\n ngAfterViewInit() { }\r\n\r\n openDateFrom() {\r\n this.dateFromButton = !this.dateFromButton;\r\n }\r\n\r\n openDateTo() {\r\n this.dateToButton = !this.dateToButton;\r\n }\r\n\r\n changeFromDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n this.dateTo = new Date();\r\n }\r\n }\r\n }\r\n\r\n changeToDate(event) {\r\n if (event.value !== null) {\r\n if (new Date(this.dateFrom).getTime() > new Date(this.dateTo).getTime()) {\r\n const dateTo: Date = new Date(this.dateTo);\r\n this.dateFrom = new Date(dateTo.getTime());\r\n }\r\n }\r\n }\r\n\r\n hoverBtn(e) {\r\n e.target.style.background = this.styles.style.mainIdentifyingColor;\r\n }\r\n\r\n outBtn(e) {\r\n if (e.target.className.indexOf(\"active\") > -1) {\r\n e.target.style.background = this.styles.style.mainIdentifyingColor;\r\n } else {\r\n e.target.style.background = \"white\";\r\n }\r\n }\r\n\r\n checkCustomCategories() {\r\n // if (this.checked == false) {\r\n // for (const x of this.searchModelData.customCategories) {\r\n // x.marked = true;\r\n // if (x.marked) {\r\n // this.searchModelData.searchModel.customCategoryIds.push(x.id);\r\n // } else {\r\n // this.searchModelData.searchModel.customCategoryIds = [];\r\n // }\r\n // }\r\n // this.checked = true;\r\n // var elements = document.getElementsByClassName(\r\n // \"allS\"\r\n // ) as HTMLCollectionOf;\r\n // for (let i = 0; i < elements.length; i++) {\r\n // elements[i].style.backgroundColor =\r\n // this.styles.style.mainIdentifyingColor;\r\n // }\r\n // } else {\r\n // for (const x of this.searchModelData.customCategories) {\r\n // x.marked = false;\r\n // if (x.marked) {\r\n // this.searchModelData.searchModel.customCategoryIds.push(x.id);\r\n // } else {\r\n // this.searchModelData.searchModel.customCategoryIds = [];\r\n // }\r\n // }\r\n // this.checked = false;\r\n // var elements = document.getElementsByClassName(\r\n // \"allS\"\r\n // ) as HTMLCollectionOf;\r\n // for (let i = 0; i < elements.length; i++) {\r\n // elements[i].style.backgroundColor = \"white\";\r\n // }\r\n // }\r\n }\r\n\r\n checkMainCategories() {\r\n // if (this.checked == false) {\r\n // for (const x of this.searchModelData.mainCategories) {\r\n // x.checked = true;\r\n // if (x.checked) {\r\n // this.searchModelData.searchModel.mainCategoryIds.push(x.id);\r\n // } else {\r\n // this.searchModelData.searchModel.mainCategoryIds = [];\r\n // }\r\n // }\r\n // this.checked = true;\r\n // var elements = document.getElementsByClassName(\r\n // \"allS\"\r\n // ) as HTMLCollectionOf;\r\n // for (let i = 0; i < elements.length; i++) {\r\n // elements[i].style.backgroundColor =\r\n // this.styles.style.mainIdentifyingColor;\r\n // }\r\n // } else {\r\n // for (const x of this.searchModelData.mainCategories) {\r\n // x.checked = false;\r\n // if (x.checked) {\r\n // this.searchModelData.searchModel.mainCategoryIds.push(x.id);\r\n // } else {\r\n // this.searchModelData.searchModel.mainCategoryIds = [];\r\n // }\r\n // }\r\n // this.checked = false;\r\n // var elements = document.getElementsByClassName(\r\n // \"allS\"\r\n // ) as HTMLCollectionOf;\r\n // for (let i = 0; i < elements.length; i++) {\r\n // elements[i].style.backgroundColor = \"white\";\r\n // }\r\n // }\r\n }\r\n\r\n checkBrands() {\r\n if (this.checkedb == false) {\r\n for (const x of this.searchModelData.subClients) {\r\n x.checked = true;\r\n if (x.checked) {\r\n this.searchModelData.searchModel.subClientIds.push(x.id);\r\n } else {\r\n this.searchModelData.searchModel.subClientIds = [];\r\n }\r\n }\r\n this.checkedb = true;\r\n var elements = document.getElementsByClassName(\r\n \"allSb\"\r\n ) as HTMLCollectionOf;\r\n for (let i = 0; i < elements.length; i++) {\r\n elements[i].style.backgroundColor =\r\n this.styles.style.mainIdentifyingColor;\r\n }\r\n } else {\r\n for (const x of this.searchModelData.subClients) {\r\n x.checked = false;\r\n if (x.checked) {\r\n this.searchModelData.searchModel.subClientIds.push(x.id);\r\n } else {\r\n this.searchModelData.searchModel.subClientIds = [];\r\n }\r\n }\r\n this.checkedb = false;\r\n var elements = document.getElementsByClassName(\r\n \"allSb\"\r\n ) as HTMLCollectionOf;\r\n for (let i = 0; i < elements.length; i++) {\r\n elements[i].style.backgroundColor = \"white\";\r\n }\r\n }\r\n }\r\n\r\n getSearch() {\r\n this.mcService.getSearch().subscribe(\r\n (response: any) => {\r\n this.searchModelData = response;\r\n // this.searchModelData.subClients = [\r\n // {\r\n // parentId: null,\r\n // id: 1,\r\n // label: \"brand\",\r\n // checked: false,\r\n // },\r\n // ];\r\n this.searchModelData.searchModel = new WebSearchModel();\r\n if (localStorage.getItem(\"searchModel\") !== null) {\r\n this.searchModelData.searchModel = JSON.parse(\r\n localStorage.getItem(\"searchModel\")\r\n );\r\n // if (this.searchModelData.mainCategories == null) this.searchModelData.mainCategories = [];\r\n // if (this.searchModelData.customCategories == null) this.searchModelData.customCategories = [];\r\n if (this.searchModelData.subClients == null)\r\n this.searchModelData.subClients = [];\r\n if (this.searchModelData.searchModel.stories)\r\n this.searchFrom = \"stories\";\r\n if (this.searchModelData.searchModel.media) this.searchFrom = \"media\";\r\n // this.searchModelData.mainCategories.forEach(x => x.checked = this.searchModelData.searchModel.mainCategoryIds.indexOf(x.id) > -1);\r\n // this.searchModelData.customCategories.forEach(x => x.marked = this.searchModelData.searchModel.customCategoryIds.indexOf(x.id) > -1);\r\n this.searchModelData.subClients.forEach(\r\n (x) =>\r\n (x.checked =\r\n this.searchModelData.searchModel.subClientIds.indexOf(x.id) >\r\n -1)\r\n );\r\n } else {\r\n this.setSearchFrom(this.searchFrom);\r\n }\r\n this.loader = false;\r\n },\r\n (error) => {\r\n this.loader = false;\r\n //\r\n }\r\n );\r\n }\r\n\r\n filterUniqueCategories(categories) {\r\n return categories.filter((value, index, self) => {\r\n return self.findIndex((cat) => cat.label === value.label) === index;\r\n });\r\n }\r\n\r\n customChecked(custom) {\r\n // custom.marked = !custom.marked;\r\n // let customCategories = this.searchModelData?.customCategories.filter((c) => c.label == custom.label);\r\n // let customCategoriesId = customCategories.map((c) => c.id);\r\n // if (custom.marked) {\r\n // customCategoriesId.forEach((c) => this.searchModelData.searchModel.customCategoryIds.push(c));\r\n // this.googleAnalytics.emitEvent('SearchCategory', 'SearchCategory', 'CategorySelected', custom.label);\r\n // } else {\r\n // this.searchModelData.searchModel.customCategoryIds = this.searchModelData.searchModel.customCategoryIds.filter((c) => !customCategoriesId.includes(c));\r\n // }\r\n }\r\n\r\n mainChecked(category) {\r\n // category.checked = !category.checked;\r\n // if (category.checked) {\r\n // this.searchModelData.searchModel.mainCategoryIds.push(category.id);\r\n // this.googleAnalytics.emitEvent('SearchCategory', 'SearchCategory', 'CategorySelected', category.label);\r\n // } else {\r\n // this.searchModelData.searchModel.mainCategoryIds =\r\n // this.searchModelData.searchModel.mainCategoryIds.filter(x => x !== category.id);\r\n // }\r\n }\r\n\r\n brandChecked(brand) {\r\n brand.checked = !brand.checked;\r\n const index = this.searchModelData.searchModel.subClientIds.indexOf(brand);\r\n if (brand.checked) {\r\n this.searchModelData.searchModel.subClientIds.push(brand.id);\r\n this.googleAnalytics.emitEvent(\r\n \"SearchBrand\",\r\n \"SearchBrand\",\r\n \"BrandSelected\",\r\n brand.label\r\n );\r\n } else {\r\n this.searchModelData.searchModel.subClientIds.splice(index, 1);\r\n }\r\n }\r\n\r\n searchMc() {\r\n this.loader = true;\r\n localStorage.setItem(\r\n \"searchModel\",\r\n JSON.stringify(this.searchModelData.searchModel)\r\n );\r\n if (this.searchModelData.searchModel.stories) {\r\n this.searchModelData.searchModel.languageId = Number(\r\n localStorage.getItem(\"lng\")\r\n );\r\n\r\n this.searchModelData.searchModel.page = 1;\r\n this.searchModelData.searchModel.pageSize = 12;\r\n this.mcService\r\n .searchMcStories(this.searchModelData.searchModel)\r\n .subscribe(\r\n (response: any) => {\r\n this.searchResultResponse = response;\r\n this.layoutResponseModel.headerLinks.forEach(\r\n (x) => (x.active = false)\r\n );\r\n this.layoutResponseModel.footerLinks.forEach(\r\n (x) => (x.active = false)\r\n );\r\n\r\n for (const result of this.searchResultResponse.stories) {\r\n if (result.featuredEmbeddedCode) {\r\n result.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n result.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (this.searchResultResponse.stories) {\r\n this.layoutResponseModel.headerLinks.forEach(\r\n (x) => (x.active = false)\r\n );\r\n }\r\n if (\r\n this.searchResultResponse.mustRegisterToAccess &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.closeSearch();\r\n this.loader = false;\r\n sessionStorage.setItem(\r\n \"redirectUrl\",\r\n \"/\" + window.location.pathname\r\n );\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.storageService.setSearchItemStories(\r\n this.searchResultResponse\r\n );\r\n this.closeSearch();\r\n this.loader = false;\r\n this.router.navigateByUrl(\"/results\");\r\n }\r\n\r\n this.storageService.setSearchModel(\r\n this.searchModelData.searchModel\r\n );\r\n },\r\n (error) => {\r\n this.searchModelData.searchModel.stories = false;\r\n }\r\n );\r\n }\r\n\r\n if (this.searchModelData.searchModel.media) {\r\n this.searchModelData.searchModel.languageId = Number(\r\n localStorage.getItem(\"lng\")\r\n );\r\n this.searchModelData.searchModel.page = 1;\r\n this.searchModelData.searchModel.pageSize = 12;\r\n\r\n this.mcService.searchMcMedia(this.searchModelData.searchModel).subscribe(\r\n (response: any) => {\r\n this.searchResultResponse = response;\r\n this.layoutResponseModel.headerLinks.forEach(\r\n (x) => (x.active = false)\r\n );\r\n this.layoutResponseModel.footerLinks.forEach(\r\n (x) => (x.active = false)\r\n );\r\n\r\n if (this.searchResultResponse.media) {\r\n this.layoutResponseModel.headerLinks.forEach(\r\n (x) => (x.active = false)\r\n );\r\n }\r\n if (\r\n this.searchResultResponse.mustRegisterToAccess &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.closeSearch();\r\n this.loader = false;\r\n sessionStorage.setItem(\r\n \"redirectUrl\",\r\n \"/\" + window.location.pathname\r\n );\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.storageService.setSearchItemMedia(this.searchResultResponse);\r\n this.closeSearch();\r\n this.loader = false;\r\n this.router.navigateByUrl(\"/results\");\r\n }\r\n\r\n this.storageService.setSearchModel(this.searchModelData.searchModel);\r\n },\r\n (error) => {\r\n this.searchModelData.searchModel.media = false;\r\n }\r\n );\r\n }\r\n }\r\n\r\n closeSearch() {\r\n this.searchChange.emit(false);\r\n localStorage.setItem(\r\n \"searchModel\",\r\n JSON.stringify(this.searchModelData.searchModel)\r\n );\r\n const body = document.getElementsByTagName(\"body\")[0];\r\n body.style.position = \"inherit\";\r\n }\r\n\r\n setSearchFrom(tab) {\r\n this.searchFrom = tab;\r\n this.searchModelData.searchModel.media = tab != \"stories\";\r\n this.searchModelData.searchModel.stories = tab != \"media\";\r\n if (this.searchModelData.searchModel.media) {\r\n this.searchModelData.searchModel.images = true;\r\n this.searchModelData.searchModel.video = true;\r\n this.searchModelData.searchModel.document = true;\r\n this.searchModelData.searchModel.audio = true;\r\n } else {\r\n this.searchModelData.searchModel.images = false;\r\n this.searchModelData.searchModel.video = false;\r\n this.searchModelData.searchModel.document = false;\r\n this.searchModelData.searchModel.audio = false;\r\n }\r\n }\r\n\r\n clearAll() {\r\n this.searchModelData.searchModel = new WebSearchModel();\r\n // this.searchModelData.mainCategories.forEach(x => x.checked = false);\r\n this.searchModelData.subClients.forEach((x) => (x.checked = false));\r\n // this.searchModelData.customCategories.forEach(x => x.marked = false);\r\n\r\n this.setSearchFrom(\"stories\");\r\n\r\n localStorage.removeItem(\"searchModel\");\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n Go Back\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n {{ language.searchFrom }}\r\n
\r\n
\r\n
\r\n Stories\r\n
\r\n
\r\n Media\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ language.selectDate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Clear all
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n {{ language.images }}\r\n
\r\n\r\n
\r\n \r\n {{ language.videoFiles }}\r\n
\r\n
\r\n \r\n {{ language.documents }}\r\n
\r\n\r\n
\r\n \r\n {{ language.audioFiles }}\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
0\">\r\n
\r\n
\r\n {{ language.brands }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ language.search }}\r\n
\r\n
\r\n
\r\n \r\n
","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnInit,\r\n HostListener,\r\n} from \"@angular/core\";\r\nimport { McService } from \"../../../shared/services/mc-service\";\r\nimport { WebNewsDetailsMediaModel, WebNewsDetailsModel } from \"../news-model\";\r\nimport { Router, ActivatedRoute, Params } from \"@angular/router\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { saveAs } from \"file-saver\";\r\nimport * as JSZip from \"jszip\";\r\nimport * as JSZipUtils from \"jszip-utils\";\r\nimport { StorageService } from \"../../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../../shared/helpers/url-helper\";\r\nimport {\r\n SearchModel,\r\n SearchResultModel,\r\n WebSearchModel,\r\n} from \"../../../header/search/search-model\";\r\nimport { TokenManagerService } from \"../../../shared/services/token-manager.service\";\r\nimport { PageStyle } from \"../../../models/style/style.model\";\r\nimport { FontsAndColorsService } from \"../../../shared/services/fonts-and-colors.service\";\r\nimport { DownloadAddToModel } from \"../../media/media-model\";\r\nimport { GoogleAnalyticsEventsService } from \"../../../shared/services/google-analytics-events.service\";\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport {\r\n DomSanitizer,\r\n Meta,\r\n MetaDefinition,\r\n Title,\r\n} from \"@angular/platform-browser\";\r\nimport { MyFilesService } from \"../../../shared/services/my-files.service\";\r\nimport { ButtonsHelper } from \"../../../shared/helpers/buttons-helper\";\r\nimport { SavedStoryService } from \"../../../shared/services/saved-story.service\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { WebpHelperService } from \"../../../shared/services/webp-helper.service\";\r\n\r\ndeclare var require: any;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-news-detail\",\r\n templateUrl: \"./news-detail.component.html\",\r\n styleUrls: [\"./news-detail.component.less\"],\r\n})\r\nexport class NewsDetailComponent implements OnInit {\r\n urlSubscription: Subscription;\r\n\r\n popup: boolean;\r\n loginPopup: boolean;\r\n media: any[];\r\n\r\n filtered: WebNewsDetailsMediaModel[] = [];\r\n imageMedia: WebNewsDetailsMediaModel[] = [];\r\n audioMedia: WebNewsDetailsMediaModel[] = [];\r\n videoMedia: WebNewsDetailsMediaModel[] = [];\r\n documentMedia: WebNewsDetailsMediaModel[] = [];\r\n cartItems: any[] = [];\r\n image: number[] = [];\r\n video: number[] = [];\r\n audio: number[] = [];\r\n activeSubTab: number;\r\n storyId: number;\r\n url: string;\r\n forDownload: any[] = [];\r\n downloadIds: any[] = [];\r\n blob: any;\r\n loader: boolean;\r\n disabledButton: boolean;\r\n mediaId: number;\r\n autoplay: boolean;\r\n allFiles: number;\r\n share: boolean;\r\n all: boolean;\r\n imageTab: boolean;\r\n videoTab: boolean;\r\n documentTab: boolean;\r\n audioTab: boolean;\r\n user: any;\r\n styles = new PageStyle();\r\n activeAllTab = false;\r\n activeTab = \"all\";\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n activeFb = false;\r\n activeMail = false;\r\n activeTw = false;\r\n activeIn = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n sLng: number;\r\n token: string;\r\n relatedStoriesTabOpened = true;\r\n mediaTabOpened = true;\r\n isMediaUser: boolean;\r\n buttonsHelper = ButtonsHelper;\r\n publisher: string;\r\n\r\n private scrolled25: boolean = false;\r\n private scrolled50: boolean = false;\r\n private scrolled75: boolean = false;\r\n private scrolled90: boolean = false;\r\n private scrolled100: boolean = false;\r\n\r\n webNewsDetailsResponse: WebNewsDetailsModel;\r\n filters: any;\r\n\r\n constructor(\r\n private myFilesService: MyFilesService,\r\n private languageService: LanguageService,\r\n private mcService: McService,\r\n private meta: Meta,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private http: HttpClient,\r\n private fontsAndColorsService: FontsAndColorsService,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private sanitizer: DomSanitizer,\r\n private titleService: Title,\r\n private savedStoryService: SavedStoryService,\r\n private storageService: StorageService,\r\n public webPHelperService: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n this.token = localStorage.getItem(\"Token\");\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n }\r\n\r\n activeallC(name) {\r\n if (name == \"all\") {\r\n if (this.activeAllTab) {\r\n this.allActive = true;\r\n } else {\r\n this.activeAllTab = true;\r\n }\r\n } else if (name == \"image\") {\r\n if (this.activeImageTab) {\r\n this.imageActive = true;\r\n } else {\r\n this.activeImageTab = true;\r\n }\r\n } else if (name == \"video\") {\r\n if (this.activeVideoTab) {\r\n this.videoActive = true;\r\n } else {\r\n this.activeVideoTab = true;\r\n }\r\n } else if (name == \"document\") {\r\n if (this.activeDocumentsTab) {\r\n this.docActive = true;\r\n } else {\r\n this.activeDocumentsTab = true;\r\n }\r\n } else if (name == \"audio\") {\r\n if (this.activeAudioTab) {\r\n this.audioActive = true;\r\n } else {\r\n this.activeAudioTab = true;\r\n }\r\n }\r\n }\r\n\r\n activeallCOut(name) {\r\n if (name == \"all\") {\r\n if (!this.allActive) {\r\n this.activeAllTab = false;\r\n }\r\n } else if (name == \"image\") {\r\n if (!this.imageActive) {\r\n this.activeImageTab = false;\r\n }\r\n } else if (name == \"video\") {\r\n if (!this.videoActive) {\r\n this.activeVideoTab = false;\r\n }\r\n } else if (name == \"document\") {\r\n if (!this.docActive) {\r\n this.activeDocumentsTab = false;\r\n }\r\n } else if (name == \"audio\") {\r\n if (!this.audioActive) {\r\n this.activeAudioTab = false;\r\n }\r\n }\r\n }\r\n\r\n showCart() {\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToDownload &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n if (this.cartItems.length > 0) {\r\n this.router.navigateByUrl(\"/download\");\r\n } else {\r\n return;\r\n }\r\n }\r\n }\r\n\r\n addDownload() {\r\n this.user = TokenManagerService.getUser();\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n let niz = new DownloadAddToModel();\r\n niz.storyMediaIds = this.downloadIds;\r\n niz.userId = this.user.id;\r\n niz.publishedMediaIds = [];\r\n niz.storyMediaIds.forEach((mediaId) => {\r\n this.googleAnalytics.emitEvent(\r\n \"media/\" + mediaId,\r\n \"download\",\r\n niz.userId ? niz.userId.toString() : \"\"\r\n );\r\n });\r\n this.mcService.addDownloadToMedia(niz).subscribe(\r\n (response) => { },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.urlSubscription = this.route.params.subscribe((params: Params) => {\r\n this.getData();\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.urlSubscription.unsubscribe();\r\n }\r\n\r\n getData() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.user = TokenManagerService.getUser();\r\n\r\n if (this.user.role === \"MediaUser\") {\r\n this.isMediaUser = false;\r\n } else if (this.user.role && this.user.role !== \"MediaUser\") {\r\n this.isMediaUser = true;\r\n } else {\r\n this.isMediaUser = false;\r\n }\r\n\r\n this.storyId = +this.router.routerState.snapshot.url.split(\"/\")[2];\r\n this.getNewsDetails();\r\n window.scrollTo(0, 0);\r\n this.popup = false;\r\n this.filtered = this.media;\r\n this.share = false;\r\n this.currentUrl = window.location.href;\r\n\r\n let mediaFromRoute = this.route.snapshot.paramMap.get(\"media\");\r\n if (mediaFromRoute != undefined) {\r\n let tempMedia = { id: mediaFromRoute };\r\n this.openMediaPopup(tempMedia);\r\n }\r\n }\r\n\r\n showSubCategory(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n showSubCategoryRandom(story) {\r\n story.categoryDropdown = !story.categoryDropdown;\r\n }\r\n\r\n getNewsDetails() {\r\n this.loader = true;\r\n if (this.sLng == 0) {\r\n this.sLng = 1;\r\n }\r\n\r\n let langId = this.route.snapshot.queryParamMap.get(\"lang\");\r\n if (langId) {\r\n this.sLng = Number(langId);\r\n }\r\n\r\n this.mcService\r\n .getNewsDetail(this.storyId, this.sLng, this.isMediaUser)\r\n .subscribe(\r\n (response: any) => {\r\n this.webNewsDetailsResponse = response;\r\n console.log(\"story\", this.webNewsDetailsResponse);\r\n this.titleService.setTitle(response?.storyTitle.substring(0, 65));\r\n this.meta.updateTag({\r\n name: \"keywords\",\r\n content: response?.storyTitle.substring(0, 65),\r\n });\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: response?.shortDescription.substring(0, 100),\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: response?.storyTitle.substring(0, 65),\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: response?.shortDescription.substring(0, 100),\r\n });\r\n\r\n this.webNewsDetailsResponse.alsoMayLike =\r\n this.webNewsDetailsResponse.alsoMayLike.slice(0, 2);\r\n for (const media of this.webNewsDetailsResponse.media) {\r\n media.shareUrl =\r\n UrlHelper.getCurrentUrlHostOnly() +\r\n \"/content-files/\" +\r\n this.webNewsDetailsResponse.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(this.webNewsDetailsResponse.storyTitle) +\r\n \"/\" +\r\n media.id;\r\n //\r\n }\r\n\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToAccess &&\r\n !this.webNewsDetailsResponse.anonymousShare &&\r\n !this.token\r\n ) {\r\n sessionStorage.setItem(\r\n \"redirectUrl\",\r\n \"/\" + window.location.pathname\r\n );\r\n this.router.navigateByUrl(\"/sign-in\");\r\n }\r\n\r\n if (this.webNewsDetailsResponse.featuredEmbeddedCode) {\r\n this.webNewsDetailsResponse.embeddedCode =\r\n this.sanitizer.bypassSecurityTrustHtml(\r\n this.webNewsDetailsResponse.featuredEmbeddedCode\r\n );\r\n }\r\n\r\n for (const story of this.webNewsDetailsResponse.alsoMayLike) {\r\n if (story.featuredEmbeddedCode) {\r\n story.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n\r\n if (this.webNewsDetailsResponse.socialSharing != null) {\r\n this.socials = this.webNewsDetailsResponse.socialSharing;\r\n }\r\n\r\n this.allFiles =\r\n this.webNewsDetailsResponse.images +\r\n this.webNewsDetailsResponse.video +\r\n this.webNewsDetailsResponse.document +\r\n this.webNewsDetailsResponse.audio;\r\n this.filtered = response.media;\r\n this.loader = false;\r\n\r\n for (const f of this.filtered) {\r\n if (f.mediaType === \"Audio\" || f.mediaType === \"Video\") {\r\n f.mediaLengthMin = Math.floor(f.mediaLenght / 60);\r\n f.mediaLengthSec = f.mediaLenght - f.mediaLengthMin * 60;\r\n }\r\n }\r\n\r\n this.groupMedia();\r\n\r\n if (localStorage.getItem(\"cart\") != null) {\r\n this.cartItems = JSON.parse(localStorage.getItem(\"cart\"));\r\n }\r\n // this.meta.updateTag({name: 'keywords', content: response.thumbUrl});\r\n this.meta.updateTag({\r\n name: \"description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:title\",\r\n content: response.storyTitle,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:text:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:image\",\r\n content: response.thumbUrl,\r\n });\r\n this.meta.updateTag({\r\n name: \"twitter:card\",\r\n content: \"summary_large_image\",\r\n });\r\n this.meta.updateTag({\r\n property: \"og:image\",\r\n content: response.thumbUrl,\r\n });\r\n this.meta.updateTag({\r\n property: \"og:description\",\r\n content: response.shortDescription,\r\n });\r\n this.meta.updateTag({\r\n property: \"og:title\",\r\n content: response.storyTitle,\r\n });\r\n setTimeout(() => {\r\n $(\"#bodytext a\").attr(\"target\", \"_blank\");\r\n }, 1000);\r\n\r\n this.filters = [\r\n {\r\n key: \"all\",\r\n text: this.language.allFiles,\r\n faClass: \"fal fa-archive\",\r\n amount: this.allFiles,\r\n },\r\n {\r\n key: \"image\",\r\n text: this.language.imageFiles,\r\n faClass: \"fal fa-camera-retro\",\r\n amount: this.webNewsDetailsResponse.images,\r\n },\r\n {\r\n key: \"video\",\r\n text: this.language.videoFiles,\r\n faClass: \"fal fa-video\",\r\n amount: this.webNewsDetailsResponse.video,\r\n },\r\n {\r\n key: \"document\",\r\n text: this.language.documents,\r\n faClass: \"fal fa-file\",\r\n amount: this.webNewsDetailsResponse.document,\r\n },\r\n {\r\n key: \"audio\",\r\n text: this.language.audioFiles,\r\n faClass: \"fal fa-volume-up\",\r\n amount: this.webNewsDetailsResponse.audio,\r\n },\r\n ];\r\n },\r\n (error2) => {\r\n this.router.navigateByUrl(\"/home\");\r\n //\r\n }\r\n );\r\n }\r\n\r\n groupMedia() {\r\n this.imageMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"image\"\r\n );\r\n this.audioMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"audio\"\r\n );\r\n this.videoMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"video\"\r\n );\r\n this.documentMedia = this.filtered.filter(\r\n (x) => x.mediaType.toLowerCase() === \"document\"\r\n );\r\n }\r\n\r\n openMediaPopup(media) {\r\n this.autoplay = false;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openMediaPopupAutplay(media) {\r\n this.autoplay = true;\r\n this.mediaId = media.id;\r\n this.popup = true;\r\n media.views++;\r\n }\r\n\r\n openShare() {\r\n this.share = !this.share;\r\n }\r\n\r\n openDropdown(id) {\r\n for (const x of this.webNewsDetailsResponse.alsoMayLike) {\r\n if (x.storyId === id) {\r\n x.shareDropdown = !x.shareDropdown;\r\n }\r\n }\r\n }\r\n openMediaDropdown(media) {\r\n media.mediaDropdown = !media.mediaDropdown;\r\n event.stopPropagation();\r\n }\r\n\r\n onClickOutside(event: Object, media) {\r\n if (event && event[\"value\"] === true) {\r\n media.mediaDropdown = false;\r\n }\r\n }\r\n\r\n readMore(id) {\r\n window.scrollTo(0, 0);\r\n this.user = TokenManagerService.getUser();\r\n this.storyId = id.staggingStoryId;\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n\r\n this.router.navigate([\r\n \"/story/\" +\r\n id.staggingStoryId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(id.storyTitle),\r\n ]);\r\n this.loader = true;\r\n\r\n this.getNewsDetails();\r\n }\r\n\r\n mediaChecked(media, e) {\r\n e.stopPropagation();\r\n let component = this;\r\n const index = this.forDownload.indexOf(media);\r\n media.checked = !media.checked;\r\n if (component.forDownload.indexOf(media) == -1 && media.checked) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n } else if (!media.checked) {\r\n component.forDownload.splice(index, 1);\r\n component.downloadIds.splice(index, 1);\r\n }\r\n }\r\n\r\n downloadingAll = false;\r\n downloadingImage = false;\r\n downloadingVideo = false;\r\n downloadingDocument = false;\r\n downloadingAudio = false;\r\n\r\n downloadAll(list = null, mediaType) {\r\n if (mediaType == \"all\") this.downloadingAll;\r\n else if (mediaType == \"image\") this.downloadingImage;\r\n else if (mediaType == \"video\") this.downloadingVideo;\r\n else if (mediaType == \"document\") this.downloadingDocument;\r\n else if (mediaType == \"audio\") this.downloadingAudio;\r\n let component = this;\r\n if (list === null) list = this.filtered;\r\n list.forEach(function (media) {\r\n component.forDownload.push(media.downloadLink);\r\n component.downloadIds.push(media.id);\r\n });\r\n this.download({}, \"text\", mediaType);\r\n }\r\n\r\n sendToCart() {\r\n let component = this;\r\n this.filtered.forEach(function (value) {\r\n if (component.cartItems.indexOf(value.id) == -1 && value.checked) {\r\n component.cartItems.push(value.id);\r\n value.addedToCart = true;\r\n value.checked = false;\r\n component.myFilesService.pushMyFiles(value.id);\r\n }\r\n });\r\n }\r\n\r\n sendAllToCart(list = null) {\r\n let component = this;\r\n if (list === null) list = this.filtered;\r\n list.forEach(function (value) {\r\n if (component.cartItems.indexOf(value.id) == -1) {\r\n component.cartItems.push(value.id);\r\n value.addedToCart = true;\r\n value.checked = false;\r\n component.myFilesService.pushMyFiles(value.id);\r\n }\r\n });\r\n }\r\n\r\n addDownloadClientSide() {\r\n for (const x of this.webNewsDetailsResponse.media) {\r\n for (const y of this.forDownload) {\r\n if (x.downloadLink == y) {\r\n x.downloads++;\r\n }\r\n }\r\n }\r\n }\r\n\r\n onLogin(state) {\r\n if (state) {\r\n this.download({}, \"text\");\r\n }\r\n }\r\n\r\n download(element, text, mediaType = null) {\r\n if (\r\n this.webNewsDetailsResponse.mustRegisterToDownload &&\r\n !this.webNewsDetailsResponse.anonymousShare &&\r\n localStorage.getItem(\"Token\") === null\r\n ) {\r\n window.scrollTo(0, 0);\r\n this.loginPopup = true;\r\n return;\r\n } else {\r\n var urls = this.forDownload;\r\n let component = this;\r\n var zip = new JSZip();\r\n var count = 0;\r\n var zipFilename = \"download.zip\";\r\n this.loader = true;\r\n if (this.forDownload.length > 1) {\r\n element.textContent = text;\r\n component.disabledButton = true;\r\n urls.forEach(function (url) {\r\n var filename = url.split(\"/\")[8];\r\n JSZipUtils.getBinaryContent(url, function (err, data) {\r\n if (err) {\r\n throw err;\r\n }\r\n zip.file(filename, data, { binary: true });\r\n count++;\r\n if (count == urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n\r\n component.disabledButton = false;\r\n element.textContent = \"Download\";\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n if (mediaType == \"all\") component.downloadingAll = false;\r\n else if (mediaType == \"image\") component.downloadingImage = false;\r\n else if (mediaType == \"video\") component.downloadingVideo = false;\r\n else if (mediaType == \"document\") component.downloadingDocument = false;\r\n else if (mediaType == \"audio\") component.downloadingAudio = false;\r\n\r\n component.loader = false;\r\n });\r\n }\r\n });\r\n });\r\n this.addDownloadClientSide();\r\n } else {\r\n for (const x of this.forDownload) {\r\n component.disabledButton = true;\r\n element.textContent = text;\r\n this.http\r\n .get(x, { responseType: \"blob\" })\r\n .toPromise()\r\n .then(\r\n (blob: Blob) => {\r\n let filename = x.split(\"/\")[8];\r\n saveAs(blob, filename);\r\n component.disabledButton = false;\r\n element.textContent = \"Download\";\r\n if (component.user.cmsUser == null) {\r\n component.addDownload();\r\n }\r\n component.loader = false;\r\n },\r\n (error) => { }\r\n );\r\n this.addDownloadClientSide();\r\n }\r\n }\r\n this.forDownload = [];\r\n }\r\n }\r\n\r\n getStoryUrl(storyId) {\r\n return (\r\n this.currentUrl.slice(0, this.currentUrl.lastIndexOf(\"story/\")) +\r\n \"story/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n this.webNewsDetailsResponse.alsoMayLike.find(\r\n (x) => x.staggingStoryId == storyId\r\n ).storyTitle\r\n )\r\n );\r\n }\r\n\r\n getMediaUrl(mediaId: number) {\r\n const currentUrlArray = this.currentUrl.split(\"/\");\r\n if (currentUrlArray.length > 6) {\r\n return window.location.href;\r\n } else {\r\n return window.location.href + \"/\" + mediaId;\r\n }\r\n }\r\n\r\n changeTab(tab: string) {\r\n this.activeTab = tab;\r\n if (tab == \"all\") this.filtered = this.webNewsDetailsResponse.media;\r\n else {\r\n tab = tab.replace(/\\b\\w/g, (l) => l.toUpperCase());\r\n this.filtered = this.webNewsDetailsResponse.media.filter(\r\n (x) => x.mediaType === tab\r\n );\r\n }\r\n }\r\n\r\n scrollToMedias() {\r\n document.getElementById(\"medias\").scrollIntoView();\r\n }\r\n\r\n toggleSavedStory(storyId) {\r\n if (this.inSavedStories(storyId))\r\n this.savedStoryService\r\n .remove(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n else\r\n this.savedStoryService\r\n .add(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n inSavedStories(storyId) {\r\n return this.savedStoryService.inSavedStories(storyId);\r\n }\r\n\r\n @HostListener(\"window:scroll\", [\"$event\"])\r\n onWindowScroll($event) {\r\n var percentage: number = Math.round(this.getScrollPercentage());\r\n if (percentage == 25 && !this.scrolled25) {\r\n this.scrolled25 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 50 && !this.scrolled50) {\r\n this.scrolled50 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 75 && !this.scrolled75) {\r\n this.scrolled75 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 90 && !this.scrolled90) {\r\n this.scrolled90 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n if (percentage == 100 && !this.scrolled100) {\r\n this.scrolled100 = true;\r\n this.googleAnalytics.emitEvent(\r\n \"Scroll\",\r\n \"ScrollingExperience\",\r\n \"Article Scroll\",\r\n this.webNewsDetailsResponse.storyTitle,\r\n percentage\r\n );\r\n return;\r\n }\r\n }\r\n\r\n getWindowHeight() {\r\n return (\r\n window.innerHeight ||\r\n document.documentElement.clientHeight ||\r\n document.body.clientHeight ||\r\n 0\r\n );\r\n }\r\n getWindowYscroll() {\r\n return (\r\n window.pageYOffset ||\r\n document.body.scrollTop ||\r\n document.documentElement.scrollTop ||\r\n 0\r\n );\r\n }\r\n getDocHeight() {\r\n return Math.max(\r\n document.body.scrollHeight || 0,\r\n document.documentElement.scrollHeight || 0,\r\n document.body.offsetHeight || 0,\r\n document.documentElement.offsetHeight || 0,\r\n document.body.clientHeight || 0,\r\n document.documentElement.clientHeight || 0\r\n );\r\n }\r\n getScrollPercentage() {\r\n return (\r\n ((this.getWindowYscroll() + this.getWindowHeight()) /\r\n this.getDocHeight()) *\r\n 100\r\n );\r\n }\r\n\r\n searchByCategory(category) {\r\n console.log(category);\r\n this.loader = true;\r\n let searchResultResponse = new SearchResultModel();\r\n const searchModel = new WebSearchModel();\r\n searchModel.languageId = Number(localStorage.getItem(\"lng\"));\r\n searchModel.stories = true;\r\n searchModel.media = false;\r\n searchModel.images = false;\r\n searchModel.video = false;\r\n searchModel.document = false;\r\n searchModel.audio = false;\r\n searchModel.page = 1;\r\n searchModel.pageSize = 12;\r\n if (category.isCustom) {\r\n searchModel.customCategoryIds = [category.id];\r\n } else {\r\n searchModel.mainCategoryIds = [category.id];\r\n }\r\n\r\n this.mcService.searchMcStories(searchModel).subscribe(\r\n (response: any) => {\r\n searchResultResponse = response;\r\n for (const result of searchResultResponse.stories) {\r\n if (result.featuredEmbeddedCode) {\r\n result.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n result.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (\r\n searchResultResponse.mustRegisterToAccess &&\r\n localStorage.getItem(\"Token\") == null\r\n ) {\r\n this.loader = false;\r\n sessionStorage.setItem(\"redirectUrl\", \"/\" + window.location.pathname);\r\n this.router.navigateByUrl(\"/sign-in\");\r\n } else {\r\n this.storageService.setSearchItemStories(searchResultResponse);\r\n this.storageService.setSearchModel(searchModel);\r\n this.loader = false;\r\n this.router.navigateByUrl(\"/results\");\r\n }\r\n },\r\n (error) => {\r\n searchModel.stories = false;\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
{{ language.storyPublisher }}
\r\n
\r\n {{ webNewsDetailsResponse?.publishedDate | date : \" dd MMMM yyyy\" }}\r\n
\r\n
\r\n
\r\n
{{ language.storyDate }}
\r\n
\r\n {{ webNewsDetailsResponse?.publishedDate | date : \" dd MMMM yyyy\" }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n {{ language.addStoryToFav }}\r\n
\r\n
\r\n \r\n {{ downloadingAll ? language.downloading : 'Download All Media' }}\r\n
\r\n
\r\n
\r\n

\r\n {{ webNewsDetailsResponse?.storyTitle }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
0\">\r\n
\r\n

\r\n {{ language.media }}\r\n
\r\n \r\n \r\n
\r\n

\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.images }} ({{ imageMedia.length }})
\r\n
\r\n {{ downloadingImage ? language.downloading : language.downloadAllImages }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.videos }} ({{ videoMedia.length }})
\r\n
\r\n {{ downloadingVideo ? language.downloading : language.downloadAllVideos }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
\r\n {{ language.documents }} ({{ documentMedia.length }})\r\n
\r\n
\r\n {{ downloadingDocument ? language.downloading : language.downloadAllDocuments }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n 0 && mediaTabOpened\">\r\n
\r\n
{{ language.audios }} ({{ audioMedia.length }})
\r\n
\r\n {{ downloadingAudio ? language.downloading : language.downloadAllAudios }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

\r\n {{ language.youMayAlsoLike }}\r\n

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport { TermsModel } from \"./terms-model\";\r\nimport { Router } from \"@angular/router\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\n\r\n@Component({\r\n selector: \"app-terms\",\r\n templateUrl: \"./terms.component.html\",\r\n styleUrls: [\"./terms.component.less\"],\r\n})\r\nexport class TermsComponent implements OnInit {\r\n loader: boolean;\r\n termsResponseModel = new TermsModel();\r\n styles: PageStyle;\r\n language: Language;\r\n\r\n constructor(private mcService: McService, private router: Router, private languageService: LanguageService,\r\n ) {\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n ngOnInit() {\r\n this.getTerms();\r\n }\r\n\r\n getTerms() {\r\n this.loader = true;\r\n this.mcService.getTerms().subscribe(\r\n (response: any) => {\r\n this.termsResponseModel = response;\r\n this.loader = false;\r\n },\r\n (error) => { }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

{{ language.termsAndConditions }}

\r\n
\r\n
\r\n

\r\n\r\n
\r\n
\r\n

{{ language.privacyPolicy }}

\r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n","import { Injectable } from \"@angular/core\";\r\nimport { UserCentricsService } from \"./user-centrics.service\";\r\ndeclare let gtag: Function;\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GoogleAnalyticsEventsService {\r\n trackingId: string;\r\n constructor(private userCentrics: UserCentricsService) {}\r\n\r\n public initGoogleAnalytics(trackingID: string) {\r\n this.trackingId = trackingID;\r\n this.userCentrics.updateGA4Id(this.trackingId);\r\n }\r\n\r\n private getURLParameter(name) {\r\n return (\r\n decodeURIComponent(\r\n (new RegExp(\"[?|&]\" + name + \"=\" + \"([^&;]+?)(&|#|;|$)\").exec(\r\n location.search\r\n ) || [null, \"\"])[1].replace(/\\+/g, \"%20\")\r\n ) || null\r\n );\r\n }\r\n\r\n public emitEvent(\r\n eventName: string,\r\n eventCategory: string,\r\n eventAction: string,\r\n eventLabel: string = null,\r\n eventValue: number = null\r\n ) {\r\n if (this.userCentrics.isAnalyticsConsented())\r\n gtag(\"event\", eventName, {\r\n event_label: eventLabel,\r\n event_category: eventCategory,\r\n event_action: eventAction,\r\n non_interaction: false,\r\n value: eventValue,\r\n uaId: this.trackingId,\r\n });\r\n }\r\n\r\n public emitNonInteracionalEvent(\r\n eventCategory: string,\r\n eventAction: string,\r\n eventLabel: string = null,\r\n eventValue: number = null\r\n ) {\r\n if (this.userCentrics.isAnalyticsConsented())\r\n gtag(\"event\", eventAction, {\r\n event_label: eventLabel,\r\n event_category: eventCategory,\r\n non_interaction: true,\r\n value: eventValue,\r\n uaId: this.trackingId,\r\n });\r\n }\r\n\r\n public emitArticleEvent(webLocation: string, storyId: number) {\r\n var utm_source = this.getURLParameter(\"utm_source\");\r\n if (!utm_source) utm_source = webLocation;\r\n if (this.userCentrics.isAnalyticsConsented())\r\n this.emitNonInteracionalEvent(\r\n \"Articles\",\r\n \"Article page display\",\r\n utm_source,\r\n storyId\r\n );\r\n }\r\n\r\n public emitPageView(currentUrl: string) {\r\n if (this.userCentrics.isAnalyticsConsented())\r\n this.emitEvent(\"pageview\", \"pageview\", \"pageview\", currentUrl);\r\n }\r\n\r\n public emitReadMoreEvent(\r\n clickLocation: string,\r\n articleTitle: string,\r\n url: string\r\n ) {\r\n if (this.userCentrics.isAnalyticsConsented())\r\n gtag(\"event\", \"READ MORE CTA Click\", {\r\n event_label: clickLocation,\r\n event_category: \"ReadMore\",\r\n non_interaction: false,\r\n dimension1: articleTitle,\r\n dimension2: url,\r\n uaId: this.trackingId,\r\n });\r\n }\r\n}\r\n","\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { LoginModel, NewPasswordModel, UserModel } from '../../login/login-model';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment';\r\nimport { ToastrConfig } from '../helpers/toastr-config';\r\n\r\n@Injectable()\r\nexport class TokenManagerService {\r\n public token: string;\r\n private userLoginURL = environment.apiUrl + '/MediaCenterUser/Login';\r\n private ForgotPasswordURL = environment.apiUrl + '/MediaCenterUser/ForgotPassword';\r\n private ResetPasswordURL = environment.apiUrl + '/MediaCenterUser/ResetPassword';\r\n private resetPasswordAdminURL = environment.apiUrl + '/MediaCenterUser/ResetPasswordAdmin';\r\n private checkAuthenticationUrl = environment.apiUrl + '/MediaCenterUser/UserAuthentication';\r\n private checkPasswordCodeUrl = environment.apiUrl + '/MediaCenterUser/CheckPasswordCode';\r\n private checkPasswordCodeAdminUrl = environment.apiUrl + '/MediaCenterUser/CheckPasswordCodeAdmin';\r\n private mustRegisterUrl = environment.apiUrl + '/MediaCenterUser/MustRegister';\r\n private registerImportedURL = environment.apiUrl + '/MediaCenterUser/RegisterImported';\r\n\r\n static getToken() {\r\n\r\n if (localStorage.getItem('Token') === null) {\r\n const tokenObject = JSON.parse(localStorage.getItem('Token'));\r\n if (tokenObject !== null) {\r\n return tokenObject.token;\r\n }\r\n } else {\r\n const tokenObject = JSON.parse(localStorage.getItem('Token'));\r\n if (tokenObject !== null) {\r\n return tokenObject.token;\r\n }\r\n }\r\n\r\n }\r\n\r\n static getUser(): UserModel {\r\n if (localStorage.getItem('User') === null) {\r\n const object = JSON.parse(localStorage.getItem('User'));\r\n\r\n if (!object) {\r\n const user = new UserModel();\r\n user.id = 0;\r\n\r\n return user;\r\n }\r\n\r\n return object.user;\r\n\r\n } else {\r\n const object = JSON.parse(localStorage.getItem('User'));\r\n\r\n if (!object) {\r\n const user = new UserModel();\r\n user.id = 0;\r\n\r\n return user;\r\n }\r\n\r\n return object.user;\r\n }\r\n }\r\n\r\n /*static isAdmin() {\r\n if (localStorage.getItem('currentUser') === null) {\r\n return (localStorage.getItem('isAdmin') === 'true');\r\n } else {\r\n return (localStorage.getItem('isAdmin') === 'true');\r\n }\r\n }*/\r\n\r\n constructor(private http: HttpClient, private toastr: ToastrService) {\r\n const token = JSON.parse(localStorage.getItem('Token'));\r\n this.token = token && token.token;\r\n }\r\n\r\n private handleError(response: any) {\r\n \r\n let errMsg: string;\r\n if (response.status > 200) {\r\n errMsg = response.error.message;\r\n } else {\r\n errMsg = response.message ? response.message : response.toString();\r\n }\r\n\r\n this.toastr.error(errMsg, 'Error', ToastrConfig.error);\r\n\r\n return observableThrowError({ status: response.status, message: errMsg });\r\n }\r\n\r\n login(user: LoginModel) {\r\n\r\n return this.http.post(this.userLoginURL, user).pipe(\r\n map((response) => {\r\n const token = response && response.token;\r\n if (token) {\r\n this.token = token;\r\n\r\n if (response.user.role === 3 || response.user.role === 4 || response.user.role === 5 || response.user.role === 6) {\r\n return observableThrowError('Wrong email or password!');\r\n }\r\n\r\n localStorage.setItem('Token', JSON.stringify({ token: token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n\r\n return response;\r\n } else {\r\n return false;\r\n }\r\n }),\r\n catchError((response) => this.handleError(response)));\r\n }\r\n\r\n isAuthenticated() {\r\n const promise = new Promise(\r\n (resolve, reject) => {\r\n resolve(TokenManagerService.getToken());\r\n }\r\n );\r\n return promise;\r\n }\r\n\r\n\r\n logout() {\r\n this.token = null;\r\n\r\n localStorage.removeItem('Token');\r\n localStorage.removeItem('User')\r\n\r\n sessionStorage.removeItem('mustRegister');\r\n }\r\n\r\n ForgotPassword(email: string) {\r\n return this.http.post(this.ForgotPasswordURL + '?email=' + email, true);\r\n }\r\n\r\n ResetPassword(model: NewPasswordModel) {\r\n return this.http.post(this.ResetPasswordURL, model);\r\n }\r\n\r\n registerImported(model: NewPasswordModel) {\r\n return this.http.post(this.registerImportedURL, model);\r\n }\r\n\r\n resetPasswordAdmin(model: NewPasswordModel) {\r\n return this.http.post(this.resetPasswordAdminURL, model);\r\n }\r\n\r\n checkAuthentication(resetCode) {\r\n return this.http.post(this.checkAuthenticationUrl, resetCode).pipe(\r\n map((response) => {\r\n const token = response && response.token;\r\n if (token) {\r\n this.token = token;\r\n localStorage.setItem('Token', JSON.stringify({ token: token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n return response;\r\n } else {\r\n return false;\r\n }\r\n }),\r\n catchError((response) => this.handleError(response)));;\r\n }\r\n\r\n checkPasswordCode(code) {\r\n return this.http.post(this.checkPasswordCodeUrl + '?code=' + code, true);\r\n }\r\n\r\n checkPasswordCodeAdmin(code) {\r\n return this.http.post(this.checkPasswordCodeAdminUrl + '?code=' + code, true);\r\n }\r\n\r\n mustRegister() {\r\n return this.http.get(this.mustRegisterUrl);\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { ToastrService } from \"ngx-toastr\";\r\nimport { environment } from '../../../environments/environment';\r\nimport { ToastrConfig } from \"../helpers/toastr-config\";\r\nimport { HttpRequestService } from \"./http-request.service\";\r\n\r\n@Injectable()\r\nexport class SavedStoryService {\r\n private addUrl = environment.apiUrl + '/SavedStory/Add';\r\n private getAllUrl = environment.apiUrl + '/SavedStory/GetAll';\r\n private removeUrl = environment.apiUrl + '/SavedStory/Remove';\r\n private getAllIdsUrl = environment.apiUrl + '/SavedStory/GetAllIds';\r\n\r\n savedStoryIds: any[] = [];\r\n\r\n constructor(private http: HttpRequestService, private toastr: ToastrService) { }\r\n\r\n add(storyId) {\r\n return this.http.post(this.addUrl, storyId).toPromise().then((response) => {\r\n if (!this.savedStoryIds) this.savedStoryIds = [];\r\n this.savedStoryIds.push(storyId);\r\n localStorage.setItem(\"savedStories\", JSON.stringify(this.savedStoryIds));\r\n this.toastr.success('Story Saved.', 'Well Done!', ToastrConfig.success);\r\n });\r\n }\r\n\r\n remove(storyId) {\r\n return this.http.post(this.removeUrl, storyId).toPromise().then((response) => {\r\n if (!this.savedStoryIds) this.savedStoryIds = [];\r\n this.savedStoryIds = this.savedStoryIds.filter(sId => sId != storyId);\r\n localStorage.setItem(\"savedStories\", JSON.stringify(this.savedStoryIds));\r\n this.toastr.success('Story Removed.', 'Well Done!', ToastrConfig.success);\r\n });\r\n }\r\n\r\n getAll(languageId = 1) {\r\n return this.http.get(this.getAllUrl + '?languageId=' + languageId);\r\n }\r\n\r\n getIds() {\r\n return this.http.get(this.getAllIdsUrl).subscribe(\r\n (response: any) => {\r\n this.savedStoryIds = response;\r\n localStorage.setItem(\"savedStories\", JSON.stringify(this.savedStoryIds));\r\n },\r\n (error) => console.error(error));\r\n }\r\n\r\n inSavedStories(storyId) {\r\n if (!this.savedStoryIds) this.savedStoryIds = [];\r\n return this.savedStoryIds.includes(storyId);\r\n }\r\n}\r\n","import { WebNewsModel } from \"../../routes/news/news-model\";\r\nimport { WebManageMediaModel } from \"../../download/download-model\";\r\nimport { environment } from \"../../../environments/environment\";\r\n\r\nexport class SearchModel {\r\n public subClients: ClientLookupModel[];\r\n public mainCategories: BaseLookupModel[];\r\n public customCategories: CustomCategoryLookupModel[];\r\n public searchModel: WebSearchModel;\r\n public hasCustomCategories: boolean;\r\n public hasMainCategories: boolean;\r\n\r\n constructor() {\r\n this.searchModel = new WebSearchModel();\r\n this.subClients = [];\r\n }\r\n}\r\n\r\nexport class ClientLookupModel {\r\n public parentId: number;\r\n public id: number;\r\n public label: string;\r\n\r\n //added new properties\r\n public checked: boolean;\r\n}\r\n\r\nexport class BaseLookupModel {\r\n public id: number;\r\n public label: string;\r\n\r\n //added new properties\r\n public checked: boolean;\r\n}\r\n\r\nexport class CustomCategoryLookupModel {\r\n public parentId: number;\r\n public mainCategoryId: number;\r\n public clientId: number;\r\n public id: number;\r\n public label: string;\r\n\r\n //added new properties\r\n public marked: boolean;\r\n}\r\n\r\nexport class WebSearchModel {\r\n public stories: boolean;\r\n public media: boolean;\r\n public images: boolean;\r\n public video: boolean;\r\n public document: boolean;\r\n public audio: boolean;\r\n public dateFrom: string;\r\n public dateTo: string;\r\n public searchText: string;\r\n public mainCategoryIds: number[];\r\n public customCategoryIds: number[];\r\n public subClientIds: number[];\r\n public page: number;\r\n public pageSize: number;\r\n public languageId: number;\r\n public marketId: number;\r\n\r\n constructor() {\r\n this.stories = true;\r\n this.media = true;\r\n this.images = true;\r\n this.video = false;\r\n this.document = false;\r\n this.audio = false;\r\n this.dateFrom = null;\r\n this.dateTo = null;\r\n this.searchText = \"\";\r\n this.customCategoryIds = [];\r\n this.mainCategoryIds = [];\r\n this.subClientIds = [];\r\n this.marketId = null;\r\n }\r\n}\r\n\r\nexport class SearchResultModel {\r\n public stories: WebNewsModel[];\r\n public media: WebManageMediaModel[];\r\n public mustRegisterToAccess: boolean;\r\n public mustRegisterToDownload: boolean;\r\n public maxPages: number;\r\n}\r\n\r\nexport class AlgoliaNewsRecords {\r\n public storyId: number;\r\n public title: string;\r\n public addedToCart: boolean;\r\n public mainCategories: any[];\r\n public customCategories: any[];\r\n public type: number;\r\n public tags: any[];\r\n public status: number;\r\n public mediaThumbUrl: string;\r\n public mediaOriginalUrl: string;\r\n\r\n static convertToWebNewsModel(record: AlgoliaNewsRecords): WebNewsModel {\r\n const result = new WebNewsModel();\r\n result.storyId = record.storyId;\r\n result.staggingStoryId = record.storyId;\r\n result.storyTitle = record.title;\r\n result.thumbUrl = record.mediaThumbUrl;\r\n result.fullHDUrl = record.mediaOriginalUrl;\r\n result.category = record.mainCategories\r\n .map((c) => c.name)\r\n .concat(record.customCategories.map((c) => c.name));\r\n return result;\r\n }\r\n}\r\n\r\nexport class AlgoliaMediaRecords {\r\n public objectID: string;\r\n public title: string;\r\n public addedToCart: boolean;\r\n public mainCategories: any[];\r\n public type: number;\r\n public tags: any[];\r\n public status: number;\r\n public typeName: string;\r\n public urls: any[];\r\n public storyMediaIds: any[];\r\n public isPublished: boolean;\r\n public publishedIds: number[];\r\n\r\n static convertToWebManageMediaModel(\r\n record: AlgoliaMediaRecords\r\n ): WebManageMediaModel {\r\n const result = new WebManageMediaModel();\r\n if (record.isPublished) {\r\n console.log(\"entro aca\")\r\n result.id = record.publishedIds && record.publishedIds.length > 0 ? record.publishedIds[0]\r\n : parseInt(record.objectID);\r\n console.log(result.id);\r\n } else {\r\n result.id =\r\n record.storyMediaIds && record.storyMediaIds.length > 0\r\n ? record.storyMediaIds[0]\r\n : parseInt(record.objectID);\r\n }\r\n result.name = record.title;\r\n result.mediaType = record.typeName;\r\n result.mediaType = record.typeName;\r\n result.isPublished = record.isPublished;\r\n if (record.urls.find((url) => url.format == 2))\r\n result.thumbUrl = record.urls.find((url) => url.format == 2).url;\r\n if (\r\n record.typeName === \"image\" &&\r\n record.urls.find((url) => url.format == 3)\r\n )\r\n result.fullHDUrl = record.urls.find((url) => url.format == 3).url;\r\n return result;\r\n }\r\n}\r\n","export class PageStyle {\r\n public downloadedFonts: any[];\r\n public fontType: any[];\r\n public style: Style;\r\n\r\n constructor() {\r\n this.fontType = [];\r\n this.downloadedFonts = [];\r\n }\r\n}\r\nexport class Style {\r\n public cssSpecification: string;\r\n public dateCreated: string;\r\n public embeddedFontData: string;\r\n public fontFileNames: string;\r\n public fontType: string;\r\n public fonts: FontsModel;\r\n public mainBackgroundFooterColor: string;\r\n public mainBackgroundHeaderColor: string;\r\n public mainBackgroundPrimaryColor: string;\r\n public mainBackgroundSecondaryColor: string;\r\n public mainButton1DefaultColor: string;\r\n public mainButton1HoverColor: string;\r\n public mainButton1OutlineColor: string;\r\n public mainButton2DefaultColor: string;\r\n public mainButton2HoverColor: string;\r\n public mainButton2OutlineColor: string;\r\n public mainButton3DefaultColor: string;\r\n public mainButton3HoverColor: string;\r\n public mainButton3OutlineColor: string;\r\n public mainIdentifyingColor: string;\r\n public secondaryIdentifyingColor: string;\r\n public mediaCenterId: string;\r\n public textButton1Color: string;\r\n public textButton2Color: string;\r\n public textButton3Color: string;\r\n public textCounterColor: string;\r\n public textFooterColor: string;\r\n public textH1Color: string;\r\n public textH2Color: string;\r\n public textH3Color: string;\r\n public textH4Color: string;\r\n public textHeaderColor: string;\r\n public textLinkDefaultColor: string;\r\n public textLinkHoverColor: string;\r\n public textMainColor: string;\r\n public textTabsColor: string;\r\n public textTagsColor: string;\r\n\r\n constructor() {\r\n this.fonts = new FontsModel();\r\n this.cssSpecification = '';\r\n this.dateCreated = '';\r\n this.embeddedFontData = '';\r\n this.fontFileNames = '';\r\n this.fontFileNames = '';\r\n this.fontType = '';\r\n this.mainBackgroundFooterColor = '';\r\n this.mainBackgroundHeaderColor = '';\r\n this.mainBackgroundPrimaryColor = '';\r\n this.mainBackgroundSecondaryColor = '';\r\n this.mainButton1DefaultColor = '';\r\n this.mainButton1HoverColor = '';\r\n this.mainButton1OutlineColor = '';\r\n this.mainButton2DefaultColor = '';\r\n this.mainButton2HoverColor = '';\r\n this.mainButton2OutlineColor = '';\r\n this.mainButton3DefaultColor = '';\r\n this.mainButton3HoverColor = '';\r\n this.mainButton3OutlineColor = '';\r\n this.mainIdentifyingColor = '';\r\n this.mediaCenterId = '';\r\n this.textButton1Color = '';\r\n this.textButton2Color = '';\r\n this.textButton3Color = '';\r\n this.textCounterColor = '';\r\n this.textFooterColor = '';\r\n this.textH1Color = '';\r\n this.textH2Color = '';\r\n this.textH3Color = '';\r\n this.textH4Color = '';\r\n this.textHeaderColor = '';\r\n this.textLinkDefaultColor = '';\r\n this.textLinkHoverColor = '';\r\n this.textMainColor = '';\r\n this.textTabsColor = '';\r\n this.textTagsColor = '';\r\n }\r\n}\r\n\r\nexport class FontsModel {\r\n public mainFont;\r\n public navigationFont;\r\n public sliderHeadlineFont;\r\n public sliderButtonFont;\r\n public dateFont;\r\n public featuredNewsHeadlineFont;\r\n public tagFont;\r\n public newsBoxHeadlineFont;\r\n public newsBoxParagraphFont;\r\n public newsBoxReadMoreFont;\r\n public mediaBarFont;\r\n public sectionHeadlineFont;\r\n public paragraphFont;\r\n public profileNameFont;\r\n public profileMessageFont;\r\n public socialDateFont;\r\n public downloadBtnFont;\r\n public aboutHeadlineFont;\r\n public aboutSubHeadlineStrongFont;\r\n public aboutSubHeadlineRegularFont;\r\n public aboutUsQuoteFont;\r\n public contentFileName;\r\n public contentFileMetaFont;\r\n public brandNameFont;\r\n public labelFont;\r\n public placeholderFont;\r\n public footerText;\r\n public footerLink;\r\n public btnFont;\r\n public searchSmallHeadlineFont;\r\n public searchCategoryFont;\r\n\r\n constructor() {\r\n this.mainFont = '';\r\n this.navigationFont = '';\r\n this.sliderHeadlineFont = '';\r\n this.sliderButtonFont = '';\r\n this.dateFont = '';\r\n this.featuredNewsHeadlineFont = '';\r\n this.tagFont = '';\r\n this.newsBoxHeadlineFont = '';\r\n this.newsBoxParagraphFont = '';\r\n this.newsBoxReadMoreFont = '';\r\n this.mediaBarFont = '';\r\n this.sectionHeadlineFont = '';\r\n this.paragraphFont = '';\r\n this.profileNameFont = '';\r\n this.profileMessageFont = '';\r\n this.socialDateFont = '';\r\n this.downloadBtnFont = '';\r\n this.aboutHeadlineFont = '';\r\n this.aboutSubHeadlineStrongFont = '';\r\n this.aboutSubHeadlineRegularFont = '';\r\n this.aboutUsQuoteFont = '';\r\n this.contentFileName = '';\r\n this.contentFileMetaFont = '';\r\n this.brandNameFont = '';\r\n this.labelFont = '';\r\n this.placeholderFont = '';\r\n this.footerText = '';\r\n this.footerLink = '';\r\n this.btnFont = '';\r\n this.searchSmallHeadlineFont = '';\r\n this.searchCategoryFont = '';\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { PageStyle } from '../../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../services/fonts-and-colors.service';\r\nimport { TokenManagerService } from '../../services/token-manager.service';\r\nimport { McService } from '../../services/mc-service';\r\nimport { GoogleAnalyticsEventsService } from '../../services/google-analytics-events.service';\r\nimport { FacebookService } from 'ngx-facebook';\r\n\r\n@Component({\r\n selector: 'app-share-button',\r\n templateUrl: './share-button.component.html',\r\n styleUrls: ['./share-button.component.less']\r\n})\r\nexport class ShareButtonComponent implements OnInit {\r\n\r\n @Input() social: string;\r\n @Input() open: boolean;\r\n @Input() shared: number;\r\n @Input() storyId: number = null;\r\n @Input() staggingStoryId: number = null;\r\n @Input() mediaId: number = null;\r\n @Input() sbUrl: string;\r\n @Input() description: string;\r\n @Input() title: string;\r\n @Input() image: string;\r\n @Input() isMediaShare: boolean = false;\r\n @Output() emitShared = new EventEmitter();\r\n\r\n embeddedPopupShow: boolean;\r\n user: any;\r\n hovered = false;\r\n styles = new PageStyle();\r\n\r\n constructor(private fb: FacebookService, private fontsAndColorsService: FontsAndColorsService, private mcService: McService, private googleAnalytics: GoogleAnalyticsEventsService) {\r\n\r\n const headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n\r\n fb.init({\r\n appId: headerFooter.facebookAppId,\r\n version: 'v6.0'\r\n });\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.sbUrl) {\r\n }\r\n }\r\n\r\n getUrlForEmail() {\r\n return this.sbUrl.replace(/(^\\w+:|^)\\/\\//, '');\r\n }\r\n\r\n openShare($event) {\r\n $event.stopPropagation();\r\n this.open = !this.open;\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event['value'] === true) {\r\n this.open = false;\r\n }\r\n }\r\n\r\n openEmbeddedPopup() {\r\n this.embeddedPopupShow = true;\r\n }\r\n\r\n closeEmbeddedPopup() {\r\n this.embeddedPopupShow = false;\r\n\r\n }\r\n\r\n clickSharedNews() {\r\n this.user = TokenManagerService.getUser();\r\n\r\n if (localStorage.getItem('Token') === null) {\r\n this.user.id = 'anonymous';\r\n }\r\n\r\n let networkType = this.getNetworkType(this.social);\r\n\r\n switch (networkType) {\r\n case 'facebook':\r\n this.fb.ui({\r\n method: 'share_open_graph',\r\n action_type: 'og.shares',\r\n action_properties: JSON.stringify({\r\n object: {\r\n 'og:url': this.sbUrl,\r\n 'og:title': this.title,\r\n 'og:description': this.description,\r\n 'og:image': this.image,\r\n }\r\n })\r\n }).then(res => {\r\n //this.shared++;\r\n if (this.user.cmsUser == null)\r\n this.shareAnalytics(networkType);\r\n }).catch(e => {\r\n //\r\n });\r\n break;\r\n\r\n case 'mail':\r\n const iOS = !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);\r\n\r\n if (iOS) {\r\n try {\r\n (window as any).webkit.messageHandlers.shareByEmailClicked.postMessage({\r\n url: this.sbUrl,\r\n title: this.title,\r\n subject: this.title\r\n });\r\n } catch (err) {\r\n }\r\n\r\n }\r\n window.open(`mailto:?subject=${this.title}&body=${this.description}%0D%0A%0D%0A%0D%0ALink to story: ${this.getUrlForEmail()}`, \"_blank\");\r\n if (this.user.cmsUser == null)\r\n this.shareAnalytics(networkType);\r\n\r\n break;\r\n default:\r\n if (this.user.cmsUser == null)\r\n this.shareAnalytics(networkType);\r\n }\r\n\r\n }\r\n\r\n private shareAnalytics(networkType) {\r\n if (this.isMediaShare) {\r\n this.mcService.addSharedToMedia(this.mediaId, this.user.id, networkType, false, true).subscribe();\r\n this.googleAnalytics.emitEvent('share', `media/${this.mediaId.toString()}`, `share/${networkType}`, this.user.id);\r\n } else {\r\n this.mcService.addSharedToNews(this.storyId, this.user.id, networkType, true).subscribe();\r\n this.googleAnalytics.emitEvent('share', `story/${this.staggingStoryId.toString()}`, `share/${networkType}`, this.user.id);\r\n }\r\n this.shared++;\r\n this.emitShared.emit(this.shared);\r\n }\r\n\r\n share() {\r\n if (this.social.toLowerCase().indexOf('embed') > -1) {\r\n this.openEmbeddedPopup();\r\n } else {\r\n this.clickSharedNews();\r\n }\r\n }\r\n\r\n getNetworkType(social = this.social) {\r\n if (social.toLowerCase().indexOf('facebook') > -1)\r\n return 'facebook';\r\n if (social.toLowerCase().indexOf('twitter') > -1)\r\n return 'twitter';\r\n if (social.toLowerCase().indexOf('linkedin') > -1)\r\n return 'linkedin';\r\n if (social.toLowerCase().indexOf('mail') > -1)\r\n return 'mail';\r\n if (social.toLowerCase().indexOf('embed') > -1)\r\n return 'code';\r\n\r\n return '';\r\n }\r\n\r\n getNetworkTypeClass(social = this.social) {\r\n if (social.toLowerCase().indexOf('facebook') > -1)\r\n return 'fab fa-facebook';\r\n if (social.toLowerCase().indexOf('twitter') > -1)\r\n return 'fab fa-twitter';\r\n if (social.toLowerCase().indexOf('linkedin') > -1)\r\n return 'fab fa-linkedin';\r\n if (social.toLowerCase().indexOf('mail') > -1)\r\n return 'fas fa-envelope';\r\n if (social.toLowerCase().indexOf('embed') > -1)\r\n return 'fas fa-code';\r\n\r\n return '';\r\n }\r\n\r\n hasShareButton() {\r\n let social = this.getNetworkType();\r\n if (social.toLowerCase().indexOf('linkedin') > -1 || social.toLowerCase().indexOf('twitter') > -1)\r\n return true;\r\n\r\n return false;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { PageStyle } from '../../models/style/style.model';\r\n\r\n@Injectable()\r\nexport class FontsAndColorsService {\r\n\r\n pageStyleInfo: PageStyle;\r\n constructor() {\r\n }\r\n\r\n setPageStyleInfo(response: PageStyle) {\r\n this.pageStyleInfo = response;\r\n }\r\n\r\n getPageStyleInfo(): PageStyle {\r\n if (this.pageStyleInfo) {\r\n return this.pageStyleInfo;\r\n }\r\n\r\n return new PageStyle();\r\n }\r\n\r\n}\r\n","import { Component, ElementRef, OnInit } from \"@angular/core\";\r\nimport { McService } from \"../shared/services/mc-service\";\r\nimport { LayoutModel } from \"./layout-model\";\r\nimport { PageStyle } from \"../models/style/style.model\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { Router, NavigationEnd, ActivatedRoute } from \"@angular/router\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { MetaModel } from \"../models/meta/meta\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { filter } from \"rxjs/operators\";\r\nimport { MCLanguageService } from \"../shared/services/mc-language.service\";\r\nimport { SavedStoryService } from \"../shared/services/saved-story.service\";\r\nimport { AlgoliaService } from \"../shared/services/algolia.service\";\r\nimport { LoginAttemptsService } from \"../shared/services/login-attempts.service\";\r\nimport { forEach } from \"jszip\";\r\nimport { CommunicationService } from \"../shared/services/communication.service\";\r\ndeclare global {\r\n interface Window {\r\n showCustomCookieNotice: boolean;\r\n }\r\n}\r\n\r\n@Component({\r\n selector: \"app-layout\",\r\n templateUrl: \"./layout.component.html\",\r\n styleUrls: [\"./layout.component.less\"],\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n styles: PageStyle;\r\n layoutResponseModel: LayoutModel;\r\n loader = true;\r\n showCookieNotice = true;\r\n metadatas: MetaModel;\r\n sLng: number;\r\n isVodafone: boolean;\r\n isEasyJet: boolean;\r\n isLoci: boolean;\r\n clientName: string = \"\";\r\n language: Language;\r\n\r\n constructor(\r\n private algoliaService: AlgoliaService,\r\n private mcService: McService,\r\n private communicationService: CommunicationService,\r\n private sService: StorageService,\r\n private router: Router,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n public languageService: LanguageService,\r\n public mcLanguageService: MCLanguageService,\r\n private loginAttemptsService: LoginAttemptsService,\r\n private elementRef: ElementRef,\r\n private savedStoryService: SavedStoryService,\r\n private activatedRoute: ActivatedRoute,\r\n ) {\r\n router.events\r\n .pipe(filter((event) => event instanceof NavigationEnd))\r\n .subscribe((response: NavigationEnd) => {\r\n // if (\r\n // window.showCustomCookieNotice != null &&\r\n // window.showCustomCookieNotice\r\n // ) {\r\n // if (localStorage.CookieAgreed != null) {\r\n // this.showCookieNotice = !JSON.parse(localStorage.CookieAgreed);\r\n // } else {\r\n // this.showCookieNotice = true;\r\n // }\r\n // }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n this.loader = true;\r\n this.styles = this.fontsAndColorsService.getPageStyleInfo();\r\n this.setCssVariables();\r\n this.getClientInfo();\r\n this.getHeaderFooter(1);\r\n this.getCurrentMarket();\r\n // this.getLoginAttempts();\r\n\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n if (params.token) {\r\n this.mcService.loginWithToken(params.token).subscribe(\r\n (response: any) => {\r\n localStorage.setItem(\"Token\", JSON.stringify({ token: response.token }));\r\n localStorage.setItem(\"User\", JSON.stringify({ user: response.user }));\r\n this.sService.setName(response.user.fullName);\r\n this.savedStoryService.getIds();\r\n this.router.navigateByUrl(\"/\", { replaceUrl: true });\r\n },\r\n (error) => {\r\n this.router.navigateByUrl(\"/\", { replaceUrl: true });\r\n }\r\n );\r\n }\r\n });\r\n\r\n // this.showCookieNotice = false;\r\n // if (\r\n // window.showCustomCookieNotice != null &&\r\n // window.showCustomCookieNotice\r\n // ) {\r\n // this.showCookieNotice = true;\r\n // }\r\n }\r\n\r\n getCurrentMarket() {\r\n this.mcService.getCurrentMarket().subscribe(\r\n (response: any) => {\r\n localStorage.setItem(\"currentMarket\", JSON.stringify(response));\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getLoginAttempts() {\r\n this.mcService.getLoginAttempts(TokenManagerService.getUser().id, 1, 10).subscribe(\r\n (response: any) => {\r\n localStorage.setItem(\"loginAttempts\", JSON.stringify(response));\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getHeaderFooter(x) {\r\n this.mcService.getHeaderFooter(this.sLng).subscribe(\r\n (response: any) => {\r\n this.layoutResponseModel = response;\r\n for (const link of this.layoutResponseModel.headerLinks) {\r\n if (\"/\" + link.url === this.router.url) {\r\n link.active = true;\r\n }\r\n }\r\n for (const link of this.layoutResponseModel.footerLinks) {\r\n if (\"/\" + link.url === this.router.url) {\r\n link.active = true;\r\n }\r\n }\r\n localStorage.setItem(\"headerfooter\", JSON.stringify(response));\r\n this.sService.setLogin(response);\r\n\r\n if (!this.sLng) this.sLng = this.layoutResponseModel.defaultLanguageId;\r\n\r\n this.languageService.setLanguageId(this.sLng);\r\n this.getLanguage();\r\n this.getMcLanguage();\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getMeta() {\r\n this.mcService.getMeta().subscribe(\r\n (response: any) => {\r\n this.metadatas = response;\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getClientInfo() {\r\n this.mcService.getClientInfo().subscribe(\r\n (response: any) => {\r\n const hideCategories: boolean = response.hideCategories;\r\n this.clientName = response.name;\r\n this.algoliaService.setClientId(response.id);\r\n response.mediaCenterVersions.forEach((mediaCenterVersion) => {\r\n if (mediaCenterVersion.type === 'SuperMediaCenter') {\r\n this.algoliaService.setSuperMediaCenter();\r\n }\r\n })\r\n this.sService.setLegalBanner(response.mediaCenterVersions[0]?.legalBanner);\r\n localStorage.setItem(\"hideCategories\", hideCategories ? \"1\" : \"0\");\r\n localStorage.setItem(\"hasPasswordHardening\", response.passwordHardening);\r\n localStorage.setItem(\"hasStoryCodes\", response.hasStoryCodes);\r\n\r\n // Local id dev (Bacardi) = 264\r\n // Vodafone id = 187\r\n // EasyJet id = 14\r\n // Loci id = 178\r\n localStorage.setItem(\"isVodafone\", response.id == 187 ? \"1\" : \"0\");\r\n localStorage.setItem(\"isEasyJet\", response.id == 14 ? \"1\" : \"0\");\r\n localStorage.setItem(\"isLoci\", response.id == 178 ? \"1\" : \"0\");\r\n this.isVodafone = localStorage.getItem(\"isVodafone\") === \"1\";\r\n this.isEasyJet = localStorage.getItem(\"isEasyJet\") === \"1\";\r\n this.isLoci = localStorage.getItem(\"isLoci\") === \"1\";\r\n\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'mainFont'}`,\r\n 'Montserrat, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'navigationFont'}`,\r\n 'Montserrat, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'sliderHeadlineFont'}`,\r\n 'Montserrat, sans-serif'\r\n );\r\n\r\n if (this.isVodafone) {\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'mainFont'}`,\r\n 'Vodafone Rg, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'navigationFont'}`,\r\n 'Vodafone Rg, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'sliderHeadlineFont'}`,\r\n 'Vodafone ExB, sans-serif'\r\n );\r\n }\r\n if (this.isEasyJet) {\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'mainFont'}`,\r\n 'easyJet Rounded Book, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'navigationFont'}`,\r\n 'easyJet Rounded Book, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'sliderHeadlineFont'}`,\r\n 'easyJet Rounded Headline, sans-serif'\r\n );\r\n }\r\n if (this.isLoci) {\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'mainFont'}`,\r\n 'Roc Grotesk, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'navigationFont'}`,\r\n 'Roc Grotesk, sans-serif'\r\n );\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${'sliderHeadlineFont'}`,\r\n 'Roc Grotesk, sans-serif'\r\n );\r\n }\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n getStyle() {\r\n this.mcService.getStyle().subscribe(\r\n (response: any) => {\r\n this.styles = response;\r\n this.fontsAndColorsService.setPageStyleInfo(response);\r\n this.loader = false;\r\n },\r\n (error) => {\r\n //\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n\r\n getMcLanguage() {\r\n this.mcService.getMcLanguage().subscribe(\r\n (response: any) => {\r\n this.mcLanguageService.setMCLanguage(response);\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n getLanguage() {\r\n if (this.sLng != 0) {\r\n if (this.sLng != 1) {\r\n this.mcService.getTranslation(this.sLng).subscribe(\r\n (response: any) => {\r\n this.languageService.setLanguage(response);\r\n this.loader = false;\r\n this.getMcLanguage();\r\n },\r\n (error) => {\r\n //\r\n this.loader = false;\r\n }\r\n );\r\n }\r\n }\r\n }\r\n\r\n agreeOnCookie() {\r\n //\r\n localStorage.CookieAgreed = true;\r\n this.showCookieNotice = false;\r\n }\r\n\r\n setCssVariables() {\r\n console.log(\"Estilos:\");\r\n console.log(this.styles.style);\r\n for (let cssVar in this.styles.style) {\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${cssVar}`,\r\n this.styles.style[cssVar] || \"inherit\"\r\n );\r\n }\r\n\r\n for (let cssVar in this.styles.style.fonts) {\r\n this.elementRef.nativeElement.style.setProperty(\r\n `--${cssVar}`,\r\n this.styles.style.fonts[cssVar] || \"inherit\"\r\n );\r\n }\r\n }\r\n}\r\n","
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n","\r\nimport { throwError as observableThrowError, Observable } from 'rxjs';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FacebookService, LoginResponse, LoginOptions, UIResponse, UIParams, FBVideoComponent } from 'ngx-facebook';\r\nimport { LoginModel, fbModel } from './login-model';\r\nimport { McService } from '../shared/services/mc-service';\r\nimport { TokenManagerService } from '../shared/services/token-manager.service';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { StorageService } from '../shared/services/storage.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { CustomValidators } from 'ng2-validation';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { PageStyle } from '../models/style/style.model';\r\nimport { FontsAndColorsService } from '../shared/services/fonts-and-colors.service';\r\nimport { environment } from \"../../environments/environment\";\r\nimport { LayoutModel } from '../layout/layout-model';\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { Language } from \"../models/language/language.model\";\r\nimport { ToastrConfig } from '../shared/helpers/toastr-config';\r\nimport { SavedStoryService } from '../shared/services/saved-story.service';\r\nimport { MyFilesService } from '../shared/services/my-files.service';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.less']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n loggedUserName: string;\r\n isPassowordSet: boolean;\r\n loginModel = new LoginModel();\r\n response: any;\r\n loader = false;\r\n emailPopup: boolean;\r\n valForm: FormGroup;\r\n fbData = new fbModel();\r\n token: string;\r\n styles = new PageStyle();\r\n error: string;\r\n layoutResponseModel: LayoutModel;\r\n language: Language;\r\n returnUrl = '/';\r\n showPassword: boolean;\r\n type: string;\r\n\r\n\r\n constructor(private mcService: McService,\r\n private toastr: ToastrService,\r\n private languageService: LanguageService,\r\n private fb: FacebookService,\r\n private form: FormBuilder,\r\n private authLoginService: TokenManagerService,\r\n private router: Router,\r\n private sService: StorageService,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private activatedRoute: ActivatedRoute,\r\n private savedStoryService: SavedStoryService,\r\n private myFilesService: MyFilesService) {\r\n\r\n //\r\n\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n\r\n this.valForm = this.form.group({\r\n 'password': [null, Validators.required],\r\n 'username': [null, Validators.compose([Validators.required, CustomValidators.email])],\r\n });\r\n\r\n const headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n\r\n fb.init({\r\n appId: headerFooter.facebookAppId,\r\n version: 'v6.0'\r\n });\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n const token = JSON.parse(localStorage.getItem('Token'));\r\n this.token = token && token.token;\r\n\r\n this.activatedRoute.params.subscribe((params: Params) => {\r\n this.token = params['token'];\r\n });\r\n\r\n this.activatedRoute.queryParams.subscribe((params: Params) => {\r\n this.error = params['error'];\r\n });\r\n\r\n if (sessionStorage.getItem('redirectUrl'))\r\n this.returnUrl = sessionStorage.getItem('redirectUrl');\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n if (this.error) {\r\n this.toastr.error(this.error, 'Error', ToastrConfig.error);\r\n } else if (this.token) {\r\n\r\n localStorage.setItem('Token', JSON.stringify({ token: this.token }));\r\n this.mcService.getUserByToken(this.token)\r\n .subscribe((response: any) => {\r\n\r\n localStorage.setItem('Token', JSON.stringify({ token: this.token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n\r\n this.sService.setName(response.user.fullName);\r\n this.router.navigateByUrl(this.returnUrl, { replaceUrl: true });\r\n },\r\n (error) => {\r\n localStorage.removeItem('Token')\r\n //\r\n });\r\n\r\n } else if (localStorage.getItem('Token') !== null) {\r\n this.router.navigateByUrl(this.returnUrl, { replaceUrl: true });\r\n }\r\n\r\n this.sService.getLogin().subscribe(term => {\r\n this.layoutResponseModel = term;\r\n });\r\n\r\n this.showPassword = false;\r\n this.type = 'password';\r\n //\r\n }\r\n\r\n visiblePassword(): void {\r\n this.showPassword = !this.showPassword;\r\n this.type = this.showPassword ? 'text' : 'password';\r\n }\r\n\r\n loginTwitter() {\r\n window.location.href = environment.apiUrl + '/MediaCenterUser/LoginWithTwitter';\r\n }\r\n\r\n login() {\r\n this.fb.login()\r\n .then((res: LoginResponse) => {\r\n this.mcService.logInFb(res.authResponse.accessToken)\r\n .subscribe((response: any) => {\r\n //\r\n const token = response.token;\r\n if (token) {\r\n this.token = token;\r\n\r\n if (response.user.role === 3 || response.user.role === 4 || response.user.role === 5 || response.user.role === 6) {\r\n return observableThrowError('Wrong email or password!');\r\n }\r\n localStorage.setItem('Token', JSON.stringify({ token: token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n this.savedStoryService.getIds();\r\n this.sService.setName(response.user.fullName);\r\n this.router.navigateByUrl(this.returnUrl, { replaceUrl: true });\r\n } else {\r\n return false;\r\n }\r\n },\r\n (error) => {\r\n\r\n this.toastr.error(error.message, 'Error', ToastrConfig.error);\r\n });\r\n })\r\n .catch(this.handleError);\r\n }\r\n\r\n st() {\r\n this.fb.api('/me?fields=email,first_name,last_name').then(\r\n (response: any) => {\r\n //\r\n this.fbData.email = response.email;\r\n this.fbData.facebookId = response.id;\r\n this.fbData.firstName = response.first_name;\r\n this.fbData.lastName = response.last_name;\r\n // this.loginModel.email=response.email;\r\n // this.loginModel.password='';\r\n //\r\n this.mcService.logInFb(this.fbData)\r\n .subscribe((response: any) => {\r\n\r\n const token = response.token;\r\n if (token) {\r\n this.processLogin(token, response);\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n } else {\r\n return false;\r\n }\r\n\r\n },\r\n (error) => {\r\n\r\n this.toastr.error(error.message, 'Error', ToastrConfig.error);\r\n });\r\n }\r\n )\r\n .catch(this.handleError);\r\n }\r\n\r\n registerPage() {\r\n this.router.navigateByUrl('/register');\r\n }\r\n\r\n\r\n private handleError(error) {\r\n console.error('Error processing action', error);\r\n this.toastr.error(error.message, 'Error', ToastrConfig.error);\r\n }\r\n\r\n submitLoginForm(e) {\r\n e.stopPropagation();\r\n for (const c in this.valForm.controls) {\r\n this.valForm.controls[c].markAsTouched();\r\n }\r\n if (this.valForm.valid) {\r\n this.loader = true;\r\n this.authLoginService.login(this.loginModel)\r\n .subscribe((response: any) => {\r\n this.response = response;\r\n this.loader = false;\r\n this.loggedUserName = TokenManagerService.getUser().fullName;\r\n // this.isPassowordSet = TokenManagerService.getUser().isPasswordSet;\r\n this.sService.setName(this.loggedUserName);\r\n\r\n const files = this.myFilesService.getFiles();\r\n this.myFilesService.setMyFiles(files);\r\n\r\n // this.sService.setPw(this.isPassowordSet);\r\n this.router.navigateByUrl(this.returnUrl);\r\n this.savedStoryService.getIds();\r\n\r\n },\r\n (error) => {\r\n this.toastr.error(error.message, 'Error', ToastrConfig.error);\r\n\r\n this.loader = false;\r\n });\r\n }\r\n }\r\n\r\n forgotPassword() {\r\n this.router.navigateByUrl('/forgotpassword');\r\n }\r\n\r\n processLogin(token, response) {\r\n this.token = token;\r\n\r\n if (response.user.role === 3 || response.user.role === 4 || response.user.role === 5 || response.user.role === 6) {\r\n return observableThrowError('Wrong email or password!');\r\n }\r\n localStorage.setItem('Token', JSON.stringify({ token: token }));\r\n localStorage.setItem('User', JSON.stringify({ user: response.user }));\r\n\r\n this.sService.setName(response.user.fullName);\r\n this.router.navigateByUrl(this.returnUrl);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n {{ language.signIn }}\r\n

\r\n

\r\n {{ language.register }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ language.emailNameRequired }}\r\n \r\n {{ language.invalidEmail }}\r\n
\r\n
\r\n \r\n
\r\n \"Show\r\n \"Hide\r\n
\r\n \r\n \r\n Password is required\r\n \r\n
\r\n
\r\n {{ language.forgotPassword }}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule, Injector } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { RouterModule, Routes } from \"@angular/router\";\r\nimport { BrowserModule } from \"@angular/platform-browser\";\r\nimport { BrandsComponent } from \"../routes/brands/brands.component\";\r\nimport { NewsComponent } from \"../routes/news/news.component\";\r\nimport { RedirectOldComponent } from \"../routes/redirect-old/redirect-old.component\";\r\nimport { MediaComponent } from \"../routes/media/media.component\";\r\nimport { ContactComponent } from \"../routes/contact/contact.component\";\r\nimport { LayoutComponent } from \"../layout/layout.component\";\r\nimport { HeaderComponent } from \"../header/header.component\";\r\nimport { HeaderComponent2 } from \"../header/header-2.component\";\r\nimport { HeaderComponent3 } from \"../header/header-3.component\";\r\nimport { FooterComponent } from \"../footer/footer.component\";\r\nimport { HomepageComponent } from \"./homepage/homepage.component\";\r\nimport { HomepageComponent2 } from \"./homepage/homepage-2.component\";\r\nimport { HomepageComponent3 } from \"./homepage/homepage-3.component\";\r\nimport { HomepageComponent4 } from \"./homepage/homepage-4.component\";\r\nimport { TestimonialsComponent } from \"../testimonials/testimonials.component\";\r\nimport { RegisterComponent } from \"../register/register.component\";\r\nimport { LoginComponent } from \"../login/login.component\";\r\nimport { NewsDetailComponent } from \"./news/news-detail/news-detail.component\";\r\nimport { NewsDetailComponent2 } from \"./news/news-detail/news-detail-2.component\";\r\nimport { NewsDetailComponent4 } from \"./news/news-detail/news-detail-4.component\";\r\nimport { PopupComponent } from \"../shared/components/popup/popup.component\";\r\nimport { DownloadComponent } from \"../download/download.component\";\r\nimport { SocialHomeComponent } from \"../social-home/social-home.component\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { DropdownComponent } from \"../shared/components/dropdown/dropdown.component\";\r\nimport { ClickOutsideDirective } from \"../shared/directives/click-outside.directive\";\r\nimport { SearchComponent } from \"../header/search/search.component\";\r\nimport { SearchResultsComponent } from \"../header/search-results/search-results.component\";\r\nimport { HttpRequestService } from \"../shared/services/http-request.service\";\r\nimport {\r\n HTTP_INTERCEPTORS,\r\n HttpClient,\r\n HttpClientModule,\r\n} from \"@angular/common/http\";\r\nimport { ToastrModule, ToastrService } from \"ngx-toastr\";\r\nimport { NgxPaginationModule } from \"ngx-pagination\";\r\nimport { CommunicationService } from \"../shared/services/communication.service\";\r\nimport { LoaderComponent } from \"../shared/components/loader/loader.component\";\r\nimport { LoadersmallComponent } from \"../shared/components/loader-small/loader.component\";\r\nimport { LoaderrelativeComponent } from \"../shared/components/loader-relative/loader.component\";\r\nimport { McService } from \"../shared/services/mc-service\";\r\nimport { MCLanguageService } from \"../shared/services/mc-language.service\";\r\nimport { MyFilesService } from \"../shared/services/my-files.service\";\r\nimport { StorageService } from \"../shared/services/storage.service\";\r\nimport { SearchPipe } from \"../shared/pipes/search.pipe\";\r\nimport { TermsComponent } from \"./terms/terms.component\";\r\nimport { ResultsComponent } from \"./results/results.component\";\r\nimport { ResultsSearchComponent } from \"./results/results-search/results-search.component\";\r\nimport { AgmCoreModule } from \"@agm/core\";\r\nimport { TokenManagerService } from \"../shared/services/token-manager.service\";\r\nimport { AuthInterceptorService } from \"../shared/services/auth-interceptor.service\";\r\nimport {\r\n AnonymousShareGuard,\r\n AuthGuard,\r\n AuthGuardService,\r\n MustRegisterGuard,\r\n} from \"../shared/services/auth-guard.service\";\r\nimport { ProfileComponent } from \"../header/profile/profile.component\";\r\nimport { EmailPopupComponent } from \"../login/email-popup/email-popup.component\";\r\nimport { ResetPasswordComponent } from \"../login/reset-password/reset-password.component\";\r\nimport { CheckAuthenticationComponent } from \"../login/check-authentication/check-authentication.component\";\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { LoginpopupComponent } from \"../shared/components/loginpopup/loginpopup.component\";\r\nimport { FontsAndColorsService } from \"../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../shared/services/language.service\";\r\nimport { DxDateBoxModule } from \"devextreme-angular\";\r\nimport { TermsPopupComponent } from \"../shared/components/terms-popup/terms-popup.component\";\r\nimport { GoogleAnalyticsEventsService } from \"../shared/services/google-analytics-events.service\";\r\nimport { ShareModule } from \"ngx-sharebuttons\";\r\nimport { ShareComponent } from \"../shared/components/share/share.component\";\r\nimport { StoryPreviewComponent } from \"../shared/components/story-preview/story-preview.component\";\r\nimport { ShareButtonComponent } from \"../shared/components/share-button/share-button.component\";\r\nimport { DebounceComponent } from \"../shared/debounce/debounce.component\";\r\nimport { BrandStoriesComponent } from \"./brand-stories/brand-stories.component\";\r\nimport { StyleDirective } from \"../shared/directives/style.directive\";\r\nimport { ShortenPipe } from \"../shared/pipes/shorten.pipe\";\r\nimport { ClipboardModule } from \"ngx-clipboard\";\r\nimport { ReplacePipe } from \"../shared/pipes/replace.pipe\";\r\nimport { ResetPasswordAdminComponent } from \"../login/reset-password-admin/reset-password-admin.component\";\r\nimport { RegisterImportedComponent } from \"../register-imported/register-imported.component\";\r\nimport { EmbeddedShareComponent } from \"../shared/components/embedded-share/embedded-share.component\";\r\nimport { ErrorComponent } from \"../error/error.component\";\r\nimport { RegisterPopupComponent } from \"../shared/components/register-popup/register-popup.component\";\r\nimport { MyFilesComponent } from \"../header/my-files/my-files.component\";\r\nimport { MediaFileComponent } from \"../shared/components/media-file/media-file.component\";\r\nimport { AboutUsComponent } from \"./about-us/about-us.component\";\r\nimport { ContactsComponent } from \"./contacts/contacts.component\";\r\nimport { FileHistoryComponent } from \"./file-history/file-history.component\";\r\nimport { DownloadBoxService } from \"../shared/services/download-box.service\";\r\nimport { SavedStoryService } from \"../shared/services/saved-story.service\";\r\nimport { CompetitionPageComponent } from \"./competition-page/competition-page.component\";\r\nimport { UnsubscribeNewsletterComponent } from './unsubscribe-newsletter/unsubscribe-newsletter.component';\r\nimport { SliderPictureComponent } from \"../shared/components/slider-picture/slider-picture.component\";\r\nimport { RerenderDirective } from \"../shared/directives/rerender.directive\";\r\nimport { NewsGroupComponent } from \"./news/news-group/news-group.component\";\r\nimport { MediaGroupComponent } from \"./media/media-group/media-group.component\";\r\nimport { CodeStoryComponent } from './news/code-story/code-story.component';\r\nimport { ArticleComponent } from './news/article/article.component';\r\nconst appRoutes: Routes = [\r\n {\r\n path: \"\",\r\n component: LayoutComponent,\r\n children: [\r\n {\r\n path: \"\",\r\n canActivate: [MustRegisterGuard],\r\n component: (() => {\r\n if (localStorage.getItem(\"isVodafone\") === \"1\") {\r\n return HomepageComponent2;\r\n }\r\n if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n return HomepageComponent4\r\n }\r\n return HomepageComponent;\r\n })(),\r\n pathMatch: \"full\",\r\n },\r\n { path: \"error\", component: ErrorComponent },\r\n { path: \"sign-in\", component: LoginComponent },\r\n { path: \"sign-in/:token\", component: LoginComponent },\r\n { path: \"register\", component: RegisterComponent },\r\n {\r\n path: \"competition\",\r\n component: CompetitionPageComponent,\r\n },\r\n {\r\n path: \"register/:oauth_verifier/:authorization_id/:twitterName\",\r\n component: RegisterComponent,\r\n },\r\n { path: \"register-imported/:code\", component: RegisterImportedComponent },\r\n {\r\n path: \"home\",\r\n canActivate: [MustRegisterGuard],\r\n component: (() => {\r\n if (localStorage.getItem(\"isVodafone\") === \"1\") {\r\n return HomepageComponent2;\r\n }\r\n if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n return HomepageComponent4\r\n }\r\n return HomepageComponent;\r\n })(),\r\n },\r\n {\r\n path: \"home/:id/:title/:media\",\r\n canActivate: [AnonymousShareGuard],\r\n component: (() => {\r\n if (localStorage.getItem(\"isVodafone\") === \"1\") {\r\n return HomepageComponent2;\r\n }\r\n if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n return HomepageComponent4\r\n }\r\n return HomepageComponent;\r\n })(),\r\n },\r\n {\r\n path: \"about-us\",\r\n canActivate: [AuthGuard, MustRegisterGuard],\r\n component: AboutUsComponent,\r\n },\r\n {\r\n path: \"contacts\",\r\n canActivate: [MustRegisterGuard],\r\n component: (() => {\r\n if (localStorage.getItem(\"isVodafone\") === \"1\") {\r\n return HomepageComponent2;\r\n }\r\n if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n return ContactsComponent\r\n }\r\n return HomepageComponent;\r\n })(),\r\n // component: ContactsComponent,\r\n },\r\n {\r\n path: \"brands\",\r\n canActivate: [MustRegisterGuard],\r\n component: BrandsComponent,\r\n },\r\n {\r\n path: \"brands/:brand\",\r\n canActivate: [MustRegisterGuard],\r\n component: BrandStoriesComponent,\r\n },\r\n {\r\n path: \"results\",\r\n canActivate: [MustRegisterGuard],\r\n component: ResultsComponent,\r\n },\r\n {\r\n path: \"results/:id/:title/:media\",\r\n canActivate: [AnonymousShareGuard],\r\n component: ResultsComponent,\r\n },\r\n {\r\n path: \"results/:id\",\r\n canActivate: [AnonymousShareGuard],\r\n component: ResultsComponent,\r\n },\r\n {\r\n path: \"stories\",\r\n canActivate: [AuthGuard, MustRegisterGuard],\r\n component: NewsComponent,\r\n },\r\n {\r\n path: \"content-files/:id/:title/:media\",\r\n canActivate: [AnonymousShareGuard],\r\n component: MediaComponent,\r\n },\r\n {\r\n path: \"content-files\",\r\n canActivate: [MustRegisterGuard],\r\n component: MediaComponent,\r\n },\r\n {\r\n path: \"media-library/:id/:title/:media\",\r\n canActivate: [AnonymousShareGuard],\r\n component: MediaComponent,\r\n },\r\n {\r\n path: \"media-library\",\r\n canActivate: [MustRegisterGuard],\r\n component: MediaComponent,\r\n },\r\n // {\r\n // path: \"profile\",\r\n // canActivate: [AuthGuardService, MustRegisterGuard],\r\n // component: ProfileComponent,\r\n // },\r\n {\r\n // path: \"file-history\",\r\n path: \"profile\",\r\n canActivate: [AuthGuardService, MustRegisterGuard],\r\n component: FileHistoryComponent,\r\n },\r\n {\r\n path: \"contact-us\",\r\n canActivate: [MustRegisterGuard],\r\n component: ContactComponent,\r\n },\r\n {\r\n path: \"testimonials\",\r\n canActivate: [AuthGuard, MustRegisterGuard],\r\n component: TestimonialsComponent,\r\n },\r\n {\r\n path: \"download\",\r\n canActivate: [MustRegisterGuard],\r\n component: DownloadComponent,\r\n },\r\n {\r\n path: \"download/share/:ids\",\r\n canActivate: [MustRegisterGuard],\r\n component: DownloadComponent,\r\n },\r\n {\r\n path: \"search\",\r\n canActivate: [MustRegisterGuard],\r\n component: SearchComponent,\r\n },\r\n { path: \"forgotpassword\", component: EmailPopupComponent },\r\n {\r\n path: \"legal\",\r\n canActivate: [MustRegisterGuard],\r\n component: TermsComponent,\r\n },\r\n {\r\n path: \"newsdetail/:id\",\r\n canActivate: [MustRegisterGuard],\r\n component: (() => {\r\n // return localStorage.getItem(\"isVodafone\") === \"1\" ? NewsDetailComponent2 : NewsDetailComponent;\r\n return localStorage.getItem(\"isEasyJet\") === \"1\" ? NewsDetailComponent4 : NewsDetailComponent2;\r\n return NewsDetailComponent2;\r\n })(),\r\n },\r\n {\r\n path: \"story/:id/:title\",\r\n canActivate: [AnonymousShareGuard],\r\n component: (() => {\r\n // return localStorage.getItem(\"isVodafone\") === \"1\" ? NewsDetailComponent2 : NewsDetailComponent;\r\n return localStorage.getItem(\"isEasyJet\") === \"1\" ? NewsDetailComponent4 : NewsDetailComponent2;\r\n return NewsDetailComponent2;\r\n })(),\r\n },\r\n {\r\n path: \"story/:id/:title/:media\",\r\n canActivate: [AnonymousShareGuard],\r\n component: (() => {\r\n // return localStorage.getItem(\"isVodafone\") === \"1\" ? NewsDetailComponent2 : NewsDetailComponent;\r\n return localStorage.getItem(\"isEasyJet\") === \"1\" ? NewsDetailComponent4 : NewsDetailComponent2;\r\n return NewsDetailComponent2;\r\n })(),\r\n },\r\n {\r\n path: \"story/:id\",\r\n canActivate: [AnonymousShareGuard],\r\n component: (() => {\r\n // return localStorage.getItem(\"isVodafone\") === \"1\" ? NewsDetailComponent2 : NewsDetailComponent;\r\n return localStorage.getItem(\"isEasyJet\") === \"1\" ? NewsDetailComponent4 : NewsDetailComponent2;\r\n return NewsDetailComponent2;\r\n })(),\r\n },\r\n {\r\n path: \"story/:id/:media\",\r\n canActivate: [AnonymousShareGuard],\r\n component: (() => {\r\n // return localStorage.getItem(\"isVodafone\") === \"1\" ? NewsDetailComponent2 : NewsDetailComponent;\r\n return localStorage.getItem(\"isEasyJet\") === \"1\" ? NewsDetailComponent4 : NewsDetailComponent2;\r\n return NewsDetailComponent2;\r\n })(),\r\n },\r\n // https://digitalnewsagency.com/stories/12170-formula-e-partners-with-voestalpine-for-european-races\r\n {\r\n path: \"stories/:id\",\r\n canActivate: [MustRegisterGuard],\r\n component: RedirectOldComponent,\r\n },\r\n // https://digitalnewsagency.com/media/254056/share\r\n {\r\n path: \"media/:id/share\",\r\n canActivate: [MustRegisterGuard],\r\n component: RedirectOldComponent,\r\n },\r\n // https://digitalnewsagency.com//users/49390/reset_password/f30373a60686b05d10b2c594d973666f4bf9f740\r\n // {path: 'users/:id/reset_password/:hash', component: RedirectOldComponent},\r\n { path: \"users\", component: RedirectOldComponent },\r\n { path: \"users/:id\", component: RedirectOldComponent },\r\n { path: \"users/:id/:ida\", component: RedirectOldComponent },\r\n { path: \"users/:id/:ida/:idb\", component: RedirectOldComponent },\r\n { path: \"users/:id/:ida/:idb/:idc\", component: RedirectOldComponent },\r\n {\r\n path: \"users/:id/:ida/:idb/:idc/:idd\",\r\n component: RedirectOldComponent,\r\n },\r\n { path: \"ResetPassword/:id\", component: ResetPasswordComponent },\r\n { path: \"reset-password/:id\", component: ResetPasswordAdminComponent },\r\n {\r\n path: \"UserAuthentication/:id\",\r\n component: CheckAuthenticationComponent,\r\n },\r\n {\r\n path: \"unsubscribeNewsletter/:code\",\r\n component: UnsubscribeNewsletterComponent,\r\n },\r\n { path: \"**\", redirectTo: \"/\" },\r\n // {path: 'popup', component: PopupComponent},\r\n ],\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule.forRoot(appRoutes),\r\n BrowserModule,\r\n ToastrModule,\r\n HttpClientModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NgxPaginationModule,\r\n DxDateBoxModule,\r\n AgmCoreModule.forRoot({\r\n apiKey: \"AIzaSyD-5r_vASKExMERIUadi_Ff0n0n67xpVQM\",\r\n }),\r\n ShareModule,\r\n ClipboardModule,\r\n ],\r\n declarations: [\r\n AboutUsComponent,\r\n ContactsComponent,\r\n BrandsComponent,\r\n TermsPopupComponent,\r\n NewsComponent,\r\n MediaComponent,\r\n ContactComponent,\r\n LayoutComponent,\r\n HeaderComponent,\r\n HeaderComponent2,\r\n HeaderComponent3,\r\n MyFilesComponent,\r\n FooterComponent,\r\n HomepageComponent,\r\n HomepageComponent2,\r\n HomepageComponent3,\r\n HomepageComponent4,\r\n TestimonialsComponent,\r\n RegisterComponent,\r\n LoginComponent,\r\n NewsDetailComponent,\r\n NewsDetailComponent2,\r\n NewsDetailComponent4,\r\n RedirectOldComponent,\r\n PopupComponent,\r\n DownloadComponent,\r\n LoginpopupComponent,\r\n LoaderComponent,\r\n LoadersmallComponent,\r\n LoaderrelativeComponent,\r\n SocialHomeComponent,\r\n DropdownComponent,\r\n ClickOutsideDirective,\r\n StyleDirective,\r\n RerenderDirective,\r\n SearchComponent,\r\n SearchResultsComponent,\r\n SearchPipe,\r\n TermsComponent,\r\n ResultsComponent,\r\n ResultsSearchComponent,\r\n ProfileComponent,\r\n EmailPopupComponent,\r\n ResetPasswordComponent,\r\n CheckAuthenticationComponent,\r\n ShareComponent,\r\n EmbeddedShareComponent,\r\n ShareButtonComponent,\r\n NewsGroupComponent,\r\n MediaGroupComponent,\r\n StoryPreviewComponent,\r\n DebounceComponent,\r\n BrandStoriesComponent,\r\n ShortenPipe,\r\n ReplacePipe,\r\n ErrorComponent,\r\n RegisterPopupComponent,\r\n MediaFileComponent,\r\n FileHistoryComponent,\r\n CompetitionPageComponent,\r\n UnsubscribeNewsletterComponent,\r\n SliderPictureComponent,\r\n CodeStoryComponent,\r\n ArticleComponent\r\n ],\r\n exports: [RouterModule],\r\n providers: [\r\n HttpRequestService,\r\n HttpClient,\r\n ToastrService,\r\n McService,\r\n DownloadBoxService,\r\n MCLanguageService,\r\n MyFilesService,\r\n SavedStoryService,\r\n CommunicationService,\r\n StorageService,\r\n TokenManagerService,\r\n AuthGuardService,\r\n AuthGuard,\r\n MustRegisterGuard,\r\n AnonymousShareGuard,\r\n GoogleAnalyticsEventsService,\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptorService,\r\n multi: true,\r\n },\r\n FontsAndColorsService,\r\n LanguageService,\r\n ],\r\n})\r\nexport class RoutesModule { }\r\n","import { AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { LanguageService } from \"../../../shared/services/language.service\";\r\n\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-code-story',\r\n templateUrl: './code-story.component.html',\r\n styleUrls: ['./code-story.component.less']\r\n})\r\nexport class CodeStoryComponent implements AfterViewInit {\r\n\r\n @Input() storiesByCode: any;\r\n @Input() mustRegisterToDownload: boolean;\r\n @Input() anonymousShare: boolean;\r\n @ViewChild(\"carousel\") carousel: any;\r\n language: Language;\r\n\r\n\r\n slideConfig = {\r\n slidesToShow: 3.5,\r\n slidesToScroll: 3,\r\n infinite: false,\r\n responsive: [\r\n {\r\n breakpoint: 768,\r\n settings: {\r\n slidesToShow: 1.15,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ]\r\n };\r\n\r\n constructor(private languageService: LanguageService) {\r\n this.language = languageService.getLanguage();\r\n }\r\n\r\n ngAfterViewInit() {\r\n $(this.carousel.nativeElement).slick(this.slideConfig);\r\n }\r\n}\r\n","
\r\n
\r\n
{{ storiesByCode.date | date: 'mediumDate' }}
\r\n

({{ storiesByCode.code }}) {{ storiesByCode.name }}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { PageStyle } from '../../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../services/fonts-and-colors.service';\r\nimport { TokenManagerService } from '../../services/token-manager.service';\r\nimport { McService } from '../../services/mc-service';\r\nimport { GoogleAnalyticsEventsService } from '../../services/google-analytics-events.service';\r\nimport { UrlHelper } from '../../helpers/url-helper';\r\nimport { WebNewsDetailsModel } from '../../../routes/news/news-model';\r\nimport { FacebookService } from 'ngx-facebook';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { ButtonsHelper } from '../../helpers/buttons-helper';\r\nimport { Language } from \"../../../models/language/language.model\";\r\nimport { LanguageService } from \"../../services/language.service\";\r\n\r\n@Component({\r\n selector: 'app-share',\r\n templateUrl: './share.component.html',\r\n styleUrls: ['./share.component.less']\r\n})\r\nexport class ShareComponent implements OnInit {\r\n\r\n @Input() socials: string[];\r\n @Input() open: boolean = false;\r\n @Input() shared: number;\r\n @Input() storyId: number = null;\r\n @Input() staggingStoryId: number = null;\r\n @Input() mediaId: number = null;\r\n @Input() sbUrl: string;\r\n @Input() big: boolean = false;\r\n @Input() vertical: boolean = false;\r\n @Input() horizontal: boolean = false;\r\n @Input() noTitle: boolean = false;\r\n @Input() description: string;\r\n @Input() title: string;\r\n @Input() image: string;\r\n @Input() webNewsDetailsResponse: WebNewsDetailsModel;\r\n @Input() isMediaShare: boolean = false;\r\n @Input() isMediaShareVertical: boolean = false;\r\n @Input() isMediaShareBig: boolean = false;\r\n @Input() whiteShareStyle: boolean;\r\n @Input() hideShareNumber = true;\r\n @Input() isPublished = false;\r\n @Output() emitShared = new EventEmitter();\r\n @Output() embeddOpen = new EventEmitter();\r\n\r\n buttonsHelper = ButtonsHelper;\r\n embeddedPopupShow: boolean;\r\n user: any;\r\n activeFb = false;\r\n activeMail = false;\r\n activeTw = false;\r\n activeIn = false;\r\n activeEm = false;\r\n urlStoryForEmail: string;\r\n styles = new PageStyle();\r\n language: Language;\r\n\r\n constructor(private fb: FacebookService, private languageService: LanguageService, private fontsAndColorsService: FontsAndColorsService, private mcService: McService, private googleAnalytics: GoogleAnalyticsEventsService) {\r\n\r\n const headerFooter = JSON.parse(localStorage.getItem('headerfooter'));\r\n\r\n fb.init({\r\n appId: headerFooter.facebookAppId,\r\n version: 'v6.0'\r\n });\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n }\r\n\r\n ngOnInit() {\r\n console.log(\"isPublished share\", this.isPublished);\r\n if (this.sbUrl) {\r\n this.urlStoryForEmail = this.sbUrl.replace(/(^\\w+:|^)\\/\\//, '');\r\n }\r\n }\r\n\r\n openShare($event) {\r\n $event.stopPropagation();\r\n this.open = !this.open;\r\n }\r\n\r\n onClickOutside(event: Object) {\r\n if (event && event['value'] === true) {\r\n this.open = false;\r\n }\r\n }\r\n\r\n\r\n openEmbeddedPopup() {\r\n this.embeddedPopupShow = true;\r\n }\r\n\r\n closeEmbeddedPopup() {\r\n this.embeddedPopupShow = false;\r\n\r\n }\r\n\r\n clickSharedNews(networkType) {\r\n this.user = TokenManagerService.getUser();\r\n\r\n if (localStorage.getItem('Token') === null) {\r\n this.user.id = 'anonymous';\r\n }\r\n\r\n\r\n switch (networkType) {\r\n case 'facebook':\r\n this.fb.ui({\r\n method: 'share_open_graph',\r\n action_type: 'og.shares',\r\n action_properties: JSON.stringify({\r\n object: {\r\n 'og:url': this.sbUrl,\r\n 'og:title': this.title,\r\n 'og:description': this.description,\r\n 'og:image': this.image,\r\n }\r\n })\r\n }).then(res => {\r\n //this.shared++;\r\n }).catch(e => {\r\n //\r\n });\r\n break;\r\n case 'twitter':\r\n const twitterUrl = 'https://twitter.com/intent/tweet?text=' + encodeURIComponent(this.title) + '&url=' + encodeURIComponent(this.sbUrl);\r\n window.open(twitterUrl, '_blank');\r\n break;\r\n case 'linkedin':\r\n const linkedinUrl = \"https://www.linkedin.com/shareArticle?mini=true&url=\" + encodeURIComponent(this.sbUrl);\r\n window.open(linkedinUrl, '_blank');\r\n break;\r\n case 'mail':\r\n const iOS = !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);\r\n\r\n if (iOS) {\r\n try {\r\n (window as any).webkit.messageHandlers.shareByEmailClicked.postMessage({\r\n url: this.sbUrl,\r\n title: this.title,\r\n subject: this.title\r\n });\r\n } catch (err) {\r\n }\r\n\r\n }\r\n break;\r\n default:\r\n }\r\n this.shareAnalytics(networkType);\r\n }\r\n\r\n private shareAnalytics(networkType) {\r\n if (this.isMediaShare) {\r\n this.mcService.addSharedToMedia(this.mediaId, this.user.id, networkType, this.isPublished, true).subscribe();\r\n this.googleAnalytics.emitEvent('share', \"SocialSharing\", \"ArticleSharing\", `${this.title} | ${networkType}`);\r\n } else {\r\n this.mcService.addSharedToNews(this.storyId, this.user.id, networkType, true).subscribe();\r\n this.googleAnalytics.emitEvent('share', \"SocialSharing\", \"ArticleSharing\", `${this.title} | ${networkType}`);\r\n }\r\n this.shared++;\r\n this.emitShared.emit(this.shared);\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ContactsService } from './contacts.service';\r\nimport { ContactsModel } from './contacts.model';\r\nimport { Meta } from '@angular/platform-browser';\r\nimport { McService } from '../../shared/services/mc-service';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { PageStyle } from '../../models/style/style.model';\r\nimport { FontsAndColorsService } from '../../shared/services/fonts-and-colors.service';\r\nimport { MetaModel } from '../../models/meta/meta';\r\nimport { LanguageService } from '../../shared/services/language.service';\r\nimport { Language } from '../../models/language/language.model';\r\nimport { BrandsManageModel, BrandsModel } from '../brands/brands-model';\r\n\r\n@Component({\r\n selector: 'app-contacts',\r\n templateUrl: './contacts.component.html',\r\n styleUrls: ['./contacts.component.less'],\r\n providers: [ContactsService]\r\n})\r\nexport class ContactsComponent implements OnInit {\r\n contacts = new ContactsModel();\r\n loader: boolean;\r\n styles = new PageStyle();\r\n metadatas: MetaModel;\r\n language: Language;\r\n brandsResponse = new BrandsModel();\r\n brands: BrandsManageModel[] = [];\r\n isEasyJet: boolean = false;\r\n\r\n constructor(private ContactsService: ContactsService, private languageService: LanguageService, private meta: Meta, private titleService: Title, private router: Router,\r\n private mcService: McService, private fontsAndColorsService: FontsAndColorsService) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.language = languageService.getLanguage();\r\n\r\n this.languageService.language.subscribe(\r\n (language) => {\r\n this.language = language;\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n window.scrollTo(0, 0);\r\n this.getContacts();\r\n // if (localStorage.getItem(\"isEasyJet\") === \"1\") {\r\n // this.isEasyJet = true;\r\n // }\r\n }\r\n\r\n getContacts() {\r\n this.loader = true;\r\n this.getHardcodedContacts();\r\n // this.ContactsService.mediaCenterWebContacts()\r\n\r\n // .subscribe((response: any) => {\r\n // // this.contacts = response;\r\n // this.loader = false;\r\n // },\r\n // (error) => {\r\n // //\r\n // });\r\n }\r\n\r\n getHardcodedContacts() {\r\n this.contacts.ourTeam = [\r\n {\r\n name: 'Holly Mitchell',\r\n email: 'Holly.Mitchell@easyjet.com',\r\n description: 'for easyJet media enquiries for journalists from the UK or UK publications.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Holly Mitchell.jpg',\r\n },\r\n {\r\n name: 'Andy Cockburn',\r\n email: 'Andy.Cockburn@easyJet.com',\r\n description: 'For easyJet media enquiries for journalists from the UK or UK publications on London Gatwick, London Luton, London Stansted, London Southend, Liverpool and Manchester as well as Egypt, Israel, Turkey and Jordan.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Andy Cockburn.jpg',\r\n },\r\n {\r\n name: 'Paula Peralta',\r\n email: 'Paula.Peralta@easyjet.com',\r\n description: 'for easyJet media enquiries for journalists from the UK or UK publications on Scotland and Northern Ireland as well as the Isle of Man, Jersey and Gibraltar.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Paula Peralta.jpg',\r\n },\r\n {\r\n name: 'Lottie Phillips',\r\n email: 'Lottie.phillips@easyJet.com',\r\n description: 'For easyJet media enquiries for Bristol, Birmingham, Bournemouth, Newcastle, Newquay, Southampton, as well as Denmark, Sweden, Norway and Finland and Iceland.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Lottie Phillips.jpg',\r\n },\r\n {\r\n name: 'Kirsten de Haan',\r\n email: 'Kirsten.dehaan@easyjet.com',\r\n description: 'for easyJet media enquiries for journalists from the Netherlands and Belgium.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Kirsten Dehaan.jpg',\r\n },\r\n {\r\n name: 'Matteo Finotto',\r\n email: 'Matteo.Finotto@easyJet.com',\r\n description: 'for easyJet media enquiries for journalists from Southern Europe and the Balkans (Italy, Spain, Portugal, Greece, Bulgaria, Croatia, Cyprus, Kosovo, Serbia, Montenegro and Slovenia).',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Matteo Finotto.jpg',\r\n },\r\n {\r\n name: 'Sara Scuri',\r\n email: 'Sara.Scuri@easyJet.com',\r\n description: 'for easyJet media enquiries for Italy.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Sara Scuri.jpg',\r\n },\r\n {\r\n name: 'Carinne Heinen',\r\n email: 'Carinne.Heinen@easyJet.com',\r\n description: 'for easyJet media enquiries for journalists from France, Switzerland (French-speaking), Belgium (French-speaking), Luxembourg and Morocco.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Carinne Heinen.jpg',\r\n },\r\n {\r\n name: 'Manuel Guenin',\r\n email: 'Manuel.Guenin@easyjet.com',\r\n description: 'for easyJet media enquiries for journalists from Austria, Germany, Hungary, Poland and Switzerland (German-speaking).',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Manuel Guenin.jpg',\r\n },\r\n {\r\n name: 'Doris Diagne',\r\n email: 'Doris.Diagne@easyjet.com',\r\n description: 'for easyJet media enquiries for journalists from France.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Doris Diagne.jpg',\r\n },\r\n {\r\n name: 'Kundai Musara',\r\n email: 'Kundai.Musara@easyJet.com',\r\n description: 'for easyJet media enquiries on Sustainability Communications.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Kundai Musara.jpg',\r\n },\r\n {\r\n name: 'Matt Clemens',\r\n email: 'Matt.Clemens@easyJet.com',\r\n description: 'for easyJet media enquiries on Sustainability Communications.',\r\n position: '1',\r\n thumbUrl: '../../assets/easyJet/Matt.jpeg',\r\n },\r\n ]\r\n this.contacts.rotary = [\r\n { day: 'Friday', date: '20/10/2023', name: 'Kundai Musara' },\r\n { day: 'Saturday', date: '21/10/2023', name: 'Kundai Musara' },\r\n { day: 'Sunday', date: '22/10/2023', name: 'Kundai Musara' },\r\n { day: 'Monday', date: '23/10/2023', name: 'Kundai Musara' },\r\n { day: 'Tuesday', date: '24/10/2023', name: 'Kundai Musara' },\r\n { day: 'Wednesday', date: '25/10/2023', name: 'Kundai Musara' },\r\n { day: 'Thursday', date: '26/10/2023', name: 'Kundai Musara' },\r\n { day: 'Friday', date: '27/10/2023', name: 'Matteo Finotto' },\r\n { day: 'Saturday', date: '28/10/2023', name: 'Matteo Finotto' },\r\n { day: 'Sunday', date: '29/10/2023', name: 'Matteo Finotto' },\r\n { day: 'Monday', date: '30/10/2023', name: 'Manuel Guenin' },\r\n { day: 'Tuesday', date: '31/10/2023', name: 'Manuel Guenin' },\r\n { day: 'Wednesday', date: '1/11/2023', name: 'Manuel Guenin' },\r\n { day: 'Thursday', date: '2/11/2023', name: 'Manuel Guenin' },\r\n { day: 'Friday', date: '3/11/2023', name: 'Carinne Heinen' },\r\n { day: 'Saturday', date: '4/11/2023', name: 'Carinne Heinen' },\r\n { day: 'Sunday', date: '5/11/2023', name: 'Carinne Heinen' },\r\n { day: 'Monday', date: '6/11/2023', name: 'Sara Scuri' },\r\n { day: 'Tuesday', date: '7/11/2023', name: 'Sara Scuri' },\r\n { day: 'Wednesday', date: '8/11/2023', name: 'Sara Scuri' },\r\n { day: 'Thursday', date: '9/11/2023', name: 'Sara Scuri' },\r\n { day: 'Friday', date: '10/11/2023', name: 'Lottie Phillips' },\r\n { day: 'Saturday', date: '11/11/2023', name: 'Lottie Phillips' },\r\n { day: 'Sunday', date: '12/11/2023', name: 'Lottie Phillips' },\r\n { day: 'Monday', date: '13/11/2023', name: 'Paula Peralta' },\r\n { day: 'Tuesday', date: '14/11/2023', name: 'Paula Peralta' },\r\n { day: 'Wednesday', date: '15/11/2023', name: 'Paula Peralta' },\r\n { day: 'Thursday', date: '16/11/2023', name: 'Paula Peralta' },\r\n { day: 'Friday', date: '17/11/2023', name: 'Manuel Guenin' },\r\n { day: 'Saturday', date: '18/11/2023', name: 'Manuel Guenin' },\r\n { day: 'Sunday', date: '19/11/2023', name: 'Manuel Guenin' },\r\n { day: 'Monday', date: '20/11/2023', name: 'Doris Diagne' },\r\n { day: 'Tuesday', date: '21/11/2023', name: 'Doris Diagne' },\r\n { day: 'Wednesday', date: '22/11/2023', name: 'Doris Diagne' },\r\n { day: 'Thursday', date: '23/11/2023', name: 'Doris Diagne' },\r\n { day: 'Friday', date: '24/11/2023', name: 'Andy Cockburn' },\r\n { day: 'Saturday', date: '25/11/2023', name: 'Andy Cockburn' },\r\n { day: 'Sunday', date: '26/11/2023', name: 'Andy Cockburn' },\r\n { day: 'Monday', date: '27/11/2023', name: 'Matteo Finotto' },\r\n { day: 'Tuesday', date: '28/11/2023', name: 'Matteo Finotto' },\r\n { day: 'Wednesday', date: '29/11/2023', name: 'Matteo Finotto' },\r\n { day: 'Thursday', date: '30/11/2023', name: 'Matteo Finotto' },\r\n { day: 'Friday', date: '1/12/2023', name: 'Kundai Musara' },\r\n { day: 'Saturday', date: '2/12/2023', name: 'Kundai Musara' },\r\n { day: 'Sunday', date: '3/12/2023', name: 'Kundai Musara' },\r\n { day: 'Monday', date: '4/12/2023', name: 'Carinne Heinen' },\r\n { day: 'Tuesday', date: '5/12/2023', name: 'Carinne Heinen' },\r\n { day: 'Wednesday', date: '6/12/2023', name: 'Carinne Heinen' },\r\n { day: 'Thursday', date: '7/12/2023', name: 'Carinne Heinen' },\r\n { day: 'Friday', date: '8/12/2023', name: 'Paula Peralta' },\r\n { day: 'Saturday', date: '9/12/2023', name: 'Paula Peralta' },\r\n { day: 'Sunday', date: '10/12/2023', name: 'Paula Peralta' },\r\n { day: 'Monday', date: '11/12/2023', name: 'Andy Cockburn' },\r\n { day: 'Tuesday', date: '12/12/2023', name: 'Andy Cockburn' },\r\n { day: 'Wednesday', date: '13/12/2023', name: 'Andy Cockburn' },\r\n { day: 'Thursday', date: '14/12/2023', name: 'Andy Cockburn' },\r\n { day: 'Friday', date: '15/12/2023', name: 'Sara Scuri' },\r\n { day: 'Saturday', date: '16/12/2023', name: 'Sara Scuri' },\r\n { day: 'Sunday', date: '17/12/2023', name: 'Sara Scuri' },\r\n { day: 'Monday', date: '18/12/2023', name: 'Kundai Musara' },\r\n { day: 'Tuesday', date: '19/12/2023', name: 'Kundai Musara' },\r\n { day: 'Wednesday', date: '20/12/2023', name: 'Kundai Musara' },\r\n { day: 'Thursday', date: '21/12/2023', name: 'Kundai Musara' },\r\n { day: 'Friday', date: '22/12/2023', name: 'Manuel Guenin' },\r\n { day: 'Saturday', date: '23/12/2023', name: 'Paula Peralta' },\r\n { day: 'Sunday', date: '24/12/2023', name: 'Andy Cockburn' },\r\n { day: 'Monday', date: '25/12/2023', name: 'Matteo Finotto' },\r\n { day: 'Tuesday', date: '26/12/2023', name: 'Doris Diagne' },\r\n { day: 'Wednesday', date: '27/12/2023', name: 'Lottie Phillips' },\r\n { day: 'Thursday', date: '28/12/2023', name: 'Sara Scuri' },\r\n { day: 'Friday', date: '29/12/2023', name: 'Paula Peralta' },\r\n { day: 'Saturday', date: '30/12/2023', name: 'Kundai Musara' },\r\n { day: 'Sunday', date: '31/12/2023', name: 'Carinne Heinen' },\r\n { day: 'Monday', date: '1/1/2024', name: 'Manuel Guenin' },\r\n { day: 'Tuesday', date: '2/1/2024', name: 'Manuel Guenin' },\r\n { day: 'Wednesday', date: '3/1/2024', name: 'Manuel Guenin' },\r\n { day: 'Thursday', date: '4/1/2024', name: 'Manuel Guenin' },\r\n { day: 'Friday', date: '5/1/2024', name: 'Lottie Phillips' },\r\n { day: 'Saturday', date: '6/1/2024', name: 'Lottie Phillips' },\r\n { day: 'Sunday', date: '7/1/2024', name: 'Lottie Phillips' },\r\n { day: 'Monday', date: '8/1/2024', name: 'Carinne Heinen' },\r\n { day: 'Tuesday', date: '9/1/2024', name: 'Carinne Heinen' },\r\n { day: 'Wednesday', date: '10/1/2024', name: 'Carinne Heinen' },\r\n { day: 'Thursday', date: '11/1/2024', name: 'Carinne Heinen' },\r\n { day: 'Friday', date: '12/1/2024', name: 'Doris Diagne' },\r\n { day: 'Saturday', date: '13/1/2024', name: 'Doris Diagne' },\r\n { day: 'Sunday', date: '14/1/2024', name: 'Doris Diagne' },\r\n { day: 'Monday', date: '15/1/2024', name: 'Paula Peralta' },\r\n { day: 'Tuesday', date: '16/1/2024', name: 'Paula Peralta' },\r\n { day: 'Wednesday', date: '17/1/2024', name: 'Paula Peralta' },\r\n { day: 'Thursday', date: '18/1/2024', name: 'Paula Peralta' },\r\n { day: 'Friday', date: '19/1/2024', name: 'Matteo Finotto' },\r\n { day: 'Saturday', date: '20/1/2024', name: 'Matteo Finotto' },\r\n { day: 'Sunday', date: '21/1/2024', name: 'Matteo Finotto' },\r\n { day: 'Monday', date: '22/1/2024', name: 'Sara Scuri' },\r\n { day: 'Tuesday', date: '23/1/2024', name: 'Sara Scuri' },\r\n { day: 'Wednesday', date: '23/1/2024', name: 'Sara Scuri' },\r\n { day: 'Thursday', date: '24/1/2024', name: 'Sara Scuri' },\r\n { day: 'Friday', date: '25/1/2024', name: 'Kundai Musara' },\r\n { day: 'Saturday', date: '26/1/2024', name: 'Kundai Musara' },\r\n { day: 'Sunday', date: '27/1/2024', name: 'Kundai Musara' },\r\n { day: 'Monday', date: '28/1/2024', name: 'Lottie Phillips' },\r\n { day: 'Tuesday', date: '29/1/2024', name: 'Lottie Phillips' },\r\n { day: 'Wednesday', date: '30/1/2024', name: 'Lottie Phillips' },\r\n { day: 'Thursday', date: '31/1/2024', name: 'Lottie Phillips' },\r\n ]\r\n }\r\n\r\n getBrands() {\r\n this.loader = true;\r\n this.mcService.getBrands()\r\n .subscribe((response: any) => {\r\n this.brandsResponse = response;\r\n // if (this.brandsResponse.mustRegisterToAccess && localStorage.getItem('Token') == null) {\r\n // sessionStorage.setItem('redirectUrl', '/' + window.location.pathname);\r\n // this.router.navigateByUrl('/sign-in');\r\n // }\r\n this.brands = response.clients;\r\n this.loader = false;\r\n if (this.brandsResponse.customCategories && this.brandsResponse.customCategories.length > 0)\r\n this.brandsResponse.customCategories.unshift({ id: 0, parentId: 0, label: 'All' });\r\n if (this.brandsResponse.mainCategories && this.brandsResponse.mainCategories.length > 0)\r\n this.brandsResponse.mainCategories.unshift({ id: 0, parentId: 0, label: 'All' });\r\n },\r\n (error) => {\r\n //\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n

Contact Us

\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n Media\r\n

\r\n

\r\n If you’re a journalist and would like to speak to one of the team, please\r\n email us using the contact details below.\r\n Our office hours are 09.00 to 17.00 Monday to Friday.\r\n

\r\n

\r\n Outside of office hours only, please call +44 (0) 1582 525252 for instructions to speak to the duty\r\n press officer.\r\n

\r\n

\r\n \r\n \r\n We will be unable to answer any queries not from journalists\r\n \r\n so please visit the support\r\n section where you can find many of the most frequently asked questions and alternative contact details.\r\n

\r\n
\r\n
\r\n

\r\n Corporate and
Government Relations\r\n

\r\n

\r\n If you’d like to talk to us about stakeholder relations, Government, political or policy issues please contact\r\n our\r\n public affairs team at: public.affairs@easyjet.com.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \"Contact\r\n
\r\n

{{contact.name}}

\r\n

{{contact.email}}

\r\n \r\n

{{contact.description}}

\r\n
\r\n
\r\n
\r\n

Please find a schedule of who to contact for any out-of-hours media enquiries.

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{item.day}}{{item.date}}{{item.name}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{item.day}}{{item.date}}{{item.name}}
\r\n
\r\n
\r\n
\r\n \r\n
","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule);\r\n","import {\r\n Component,\r\n ElementRef,\r\n HostListener,\r\n NgZone,\r\n OnInit,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { NewsModel } from \"../../models/news/news.model\";\r\nimport { McService } from \"../../shared/services/mc-service\";\r\nimport {\r\n FeaturedStoriesModel,\r\n HomeModel,\r\n LatestMediaModel,\r\n LatestStoriesModel,\r\n} from \"./home-model\";\r\nimport { ActivatedRoute, Params, Router } from \"@angular/router\";\r\nimport { SavedStoryService } from \"../../shared/services/saved-story.service\";\r\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\r\nimport { TokenManagerService } from \"../../shared/services/token-manager.service\";\r\nimport { StorageService } from \"../../shared/services/storage.service\";\r\nimport { UrlHelper } from \"../../shared/helpers/url-helper\";\r\nimport { PageStyle } from \"../../models/style/style.model\";\r\nimport { Language } from \"../../models/language/language.model\";\r\nimport { Meta } from \"@angular/platform-browser\";\r\nimport { Title } from \"@angular/platform-browser\";\r\nimport { FontsAndColorsService } from \"../../shared/services/fonts-and-colors.service\";\r\nimport { LanguageService } from \"../../shared/services/language.service\";\r\nimport { Location } from \"@angular/common\";\r\n\r\ndeclare var $: any;\r\n\r\nimport { MetaModel } from \"../../models/meta/meta\";\r\nimport { FacebookService } from \"ngx-facebook\";\r\nimport { environment } from \"../../../environments/environment\";\r\nimport { GoogleAnalyticsEventsService } from \"../../shared/services/google-analytics-events.service\";\r\nimport { CommunicationService } from \"../../shared/services/communication.service\";\r\nimport { MCLanguageService } from \"../../shared/services/mc-language.service\";\r\nimport { ButtonsHelper } from \"../../shared/helpers/buttons-helper\";\r\nimport { WebpHelperService } from \"../../shared/services/webp-helper.service\";\r\nimport { BrandsManageModel } from \"../brands/brands-model\";\r\n\r\n@Component({\r\n selector: \"app-homepage-4\",\r\n templateUrl: \"./homepage-4.component.html\",\r\n styleUrls: [\"./homepage-4.component.less\"],\r\n})\r\nexport class HomepageComponent4 implements OnInit {\r\n config: any;\r\n news: NewsModel[];\r\n picture: SafeHtml;\r\n visibleNews: NewsModel[];\r\n searchText = \"\";\r\n dropdown = false;\r\n grid: string;\r\n latestCategoryGrid: string;\r\n activeSubTab: number;\r\n filtered: LatestMediaModel[] = [];\r\n category: string;\r\n mediaId: number;\r\n popup = false;\r\n p = 1;\r\n subcategory = false;\r\n twitterActive: boolean;\r\n facebookActive: boolean;\r\n instagramActive: boolean;\r\n linkedinActive: boolean;\r\n loader: boolean;\r\n image: string;\r\n audio: number;\r\n video: number;\r\n document: number;\r\n images: number;\r\n twitter: any[];\r\n facebook: any[];\r\n linkedin: any;\r\n homeModelResponse = new HomeModel();\r\n storyGroupings: LatestStoriesModel[][] = [[]];\r\n items: Array = [];\r\n backgroundUrl = \"\";\r\n videoUrl = \"\";\r\n thumbUrl = \"\";\r\n autoplay: boolean;\r\n selectedFs: any = {};\r\n activeSlide: number = 0;\r\n all = true;\r\n imageTab = false;\r\n videoTab = false;\r\n documentTab = false;\r\n audioTab = false;\r\n styles = new PageStyle();\r\n showVideos = false;\r\n showImages = false;\r\n showAudios = false;\r\n showDocuments = false;\r\n countAll = 0;\r\n countVideos = 0;\r\n countImages = 0;\r\n countAudios = 0;\r\n countDocuments = 0;\r\n user: any;\r\n activeAllTab = false;\r\n activeTab = false;\r\n activeImageTab = false;\r\n activeVideoTab = false;\r\n activeDocumentsTab = false;\r\n activeAudioTab = false;\r\n socials: string[] = [];\r\n currentUrl: string;\r\n activeAll: boolean = true;\r\n activeImage: boolean = false;\r\n activeVideo: boolean = false;\r\n activeDoc: boolean = false;\r\n activeAudio: boolean = false;\r\n fStories: FeaturedStoriesModel[];\r\n nextFStories: FeaturedStoriesModel[] = [];\r\n filterDropdown: boolean;\r\n metadatas: MetaModel;\r\n newsHeadlineLength: number;\r\n newsGridResponse: HomeModel;\r\n shortDescriptionLength: number;\r\n allActive = false;\r\n imageActive = false;\r\n videoActive = false;\r\n docActive = false;\r\n audioActive = false;\r\n language: Language;\r\n mcLanguage = [];\r\n sLng: number;\r\n loading = false;\r\n xDown = null;\r\n yDown = null;\r\n featuredEmbeddedCode: SafeHtml;\r\n buttonsHelper = ButtonsHelper;\r\n mediaLoaded = false;\r\n initialLoaded = false;\r\n latestStoriesLoaded = false;\r\n storiesCategoryLoaded = false;\r\n showCategory = true;\r\n brands: BrandsManageModel[] = [];\r\n brandsCurrentScroll: number = 0;\r\n brandsMaxScroll: number = 0;\r\n innerWidth: number = 0;\r\n @ViewChild(\"brandsContainer\")\r\n brandsContainer: ElementRef;\r\n\r\n constructor(\r\n private mcService: McService,\r\n private router: Router,\r\n private ngZone: NgZone,\r\n private sService: StorageService,\r\n private meta: Meta,\r\n private titleService: Title,\r\n public fontsAndColorsService: FontsAndColorsService,\r\n private languageService: LanguageService,\r\n private mcLanguageService: MCLanguageService,\r\n private fbo: FacebookService,\r\n private route: ActivatedRoute,\r\n private googleAnalytics: GoogleAnalyticsEventsService,\r\n private location: Location,\r\n private communicationService: CommunicationService,\r\n private sanitizer: DomSanitizer,\r\n private savedStoryService: SavedStoryService,\r\n public webPHelper: WebpHelperService\r\n ) {\r\n this.styles = fontsAndColorsService.getPageStyleInfo();\r\n this.languageService.language.subscribe((language) => {\r\n this.language = language;\r\n });\r\n this.mcLanguageService.language.subscribe((language) => {\r\n this.getHomeTexts(language);\r\n });\r\n this.route.params.subscribe((params: Params) => {\r\n const id: string = params[\"id\"];\r\n const title: string = params[\"title\"];\r\n let media: string = params[\"media\"];\r\n\r\n if (media && media.indexOf(\"?\") > -1)\r\n media = media.substr(0, media.indexOf(\"?\"));\r\n\r\n if (media) {\r\n this.openPopup(+media);\r\n }\r\n this.route.queryParams.subscribe((params) => {\r\n if (params[\"parentBrandUrl\"]) {\r\n this.communicationService.setFromBrands(decodeURI(params[\"parentBrandUrl\"]));\r\n }\r\n });\r\n });\r\n }\r\n\r\n @HostListener(\"window:resize\", [\"$event\"])\r\n onResize(event) {\r\n this.resize();\r\n }\r\n\r\n getHomeTexts(mcLanguage) {\r\n if (mcLanguage) {\r\n let homeKeywords = [\r\n \"SearchBoxTitle\",\r\n \"SearchBoxText\",\r\n \"SearchBoxSubtitle\",\r\n ];\r\n let homeKeywordIds = [];\r\n let homeIdToKeyword = [];\r\n for (const keyword of mcLanguage.keywords) {\r\n if (homeKeywords.includes(keyword.label)) {\r\n homeKeywordIds.push(keyword.id);\r\n homeIdToKeyword[keyword.id] = keyword.label;\r\n }\r\n }\r\n let lngId = localStorage.getItem(\"lng\");\r\n for (const mccl of mcLanguage.mediaCenterChosenLanguages) {\r\n if (\r\n homeKeywordIds.includes(mccl.keywordId) &&\r\n mccl.languageId == lngId\r\n ) {\r\n this.mcLanguage[homeIdToKeyword[mccl.keywordId]] = mccl.translation;\r\n }\r\n }\r\n }\r\n }\r\n\r\n openPopup(id) {\r\n this.mediaId = id;\r\n this.popup = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.showCategory = localStorage.getItem(\"hideCategories\") != \"1\";\r\n this.language = this.languageService.getLanguage();\r\n this.getHomeTexts(this.mcLanguageService.getMCLanguage());\r\n document.addEventListener(\r\n \"touchstart\",\r\n (evt) => {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n },\r\n false\r\n );\r\n this.sLng = Number(localStorage.getItem(\"lng\"));\r\n window.scrollTo(0, 0);\r\n\r\n this.getHomepage();\r\n this.user = TokenManagerService.getUser();\r\n this.currentUrl = window.location.href;\r\n\r\n this.facebook = [];\r\n this.getBrands();\r\n }\r\n\r\n getBrands() {\r\n this.mcService.getBrands().subscribe(\r\n (response: any) => {\r\n this.brands = response.clients;\r\n setTimeout(() => {\r\n this.brandsMaxScroll = this.brandsContainer?.nativeElement?.offsetWidth;\r\n }, 1000);\r\n },\r\n (error) => {\r\n //\r\n }\r\n );\r\n }\r\n\r\n handleTouchStart(evt) {\r\n this.xDown = evt.touches[0].clientX;\r\n this.yDown = evt.touches[0].clientY;\r\n }\r\n\r\n resize() {\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns2\") {\r\n this.newsHeadlineLength = 155;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 120;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns3\") {\r\n this.newsHeadlineLength = 90;\r\n this.shortDescriptionLength = 140;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 65;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 120;\r\n this.shortDescriptionLength = 95;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 75;\r\n this.shortDescriptionLength = 75;\r\n }\r\n }\r\n if (this.homeModelResponse.latesStoryGridType === \"Columns4\") {\r\n this.newsHeadlineLength = 60;\r\n if (window.innerWidth <= 1500 && window.innerWidth >= 1200) {\r\n this.newsHeadlineLength = 15;\r\n }\r\n if (window.innerWidth <= 1200 && window.innerWidth >= 1000) {\r\n this.newsHeadlineLength = 110;\r\n }\r\n if (window.innerWidth <= 1000 && window.innerWidth >= 700) {\r\n this.newsHeadlineLength = 100;\r\n }\r\n }\r\n this.innerWidth = window.innerWidth;\r\n }\r\n\r\n getStoryUrl(storyId, stories) {\r\n return (\r\n this.currentUrl.replace(\"home\", \"story\") +\r\n \"/\" +\r\n storyId +\r\n \"/\" +\r\n UrlHelper.getUrlTitle(\r\n stories.find((x) => x.staggingStoryId == storyId).storyTitle\r\n )\r\n );\r\n }\r\n\r\n getFeaturedStoryUrl() {\r\n return `/story/${this.selectedFs?.staggingStoryId}/${UrlHelper.getUrlTitle(\r\n this.selectedFs?.storyTitle\r\n )}`;\r\n }\r\n\r\n homepageLoaded() {\r\n if (this.latestStoriesLoaded && this.initialLoaded) {\r\n this.resize();\r\n this.loader = false;\r\n }\r\n }\r\n\r\n getHomepage() {\r\n this.loader = true;\r\n this.mcService.getHomepageInitial(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Initial Load\");\r\n this.initialLoaded = true;\r\n this.homeModelResponse.featuredStories = response.featuredStories;\r\n this.homeModelResponse.mustRegisterToAccess =\r\n response.mustRegisterToAccess;\r\n this.homeModelResponse.mustRegisterToDownload =\r\n response.mustRegisterToDownload;\r\n this.homeModelResponse.hideCounters = response.hideCounters;\r\n this.homeModelResponse.latesStoryGridType = response.latesStoryGridType;\r\n this.grid = this.homeModelResponse.latesStoryGridType;\r\n this.homeModelResponse.title = response.title;\r\n this.homeModelResponse.bodyText = response.bodyText;\r\n this.homeModelResponse.additionalBodyText = response.additionalBodyText;\r\n this.homeModelResponse.socialSharing = response.socialSharing;\r\n\r\n this.fStories = response.featuredStories;\r\n this.selectedFs = this.homeModelResponse.featuredStories[0];\r\n for (let i = 1; i < this.fStories.length && i <= 4; i++) {\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n if (this.nextFStories.length < 4) {\r\n this.nextFStories.push(this.fStories[0]);\r\n if (this.nextFStories.length < 4 && this.fStories.length > 1) {\r\n this.nextFStories.push(this.fStories[1]);\r\n }\r\n }\r\n for (const x of this.homeModelResponse.featuredStories) {\r\n this.images = x.images;\r\n this.video = x.video;\r\n this.audio = x.audio;\r\n this.document = x.document;\r\n }\r\n this.backgroundUrl =\r\n this.homeModelResponse?.featuredStories[0]?.fullHDUrl || \"\";\r\n\r\n for (const x of this.fStories) {\r\n if (x.fullHDUrl === \"\") {\r\n this.thumbUrl = x.thumbUrl;\r\n }\r\n }\r\n\r\n for (const featuredStory of this.homeModelResponse.featuredStories) {\r\n if (featuredStory.featuredEmbeddedCode) {\r\n featuredStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n featuredStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n if (this.homeModelResponse.socialSharing != null) {\r\n this.socials = this.homeModelResponse.socialSharing;\r\n }\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n this.mcService.getHomepageLatestStories(this.sLng).subscribe(\r\n (response: any) => {\r\n console.log(\"Latest Stories\");\r\n this.latestStoriesLoaded = true;\r\n this.homeModelResponse.latestStories = response.latestStories;\r\n for (const latestStory of this.homeModelResponse.latestStories) {\r\n if (latestStory.featuredEmbeddedCode) {\r\n latestStory.embeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n latestStory.featuredEmbeddedCode\r\n );\r\n }\r\n }\r\n this.loadStoryGroupings();\r\n this.homepageLoaded();\r\n },\r\n (error) => { }\r\n );\r\n }\r\n\r\n loadStoryGroupings() {\r\n let count = 0;\r\n for (const story of this.homeModelResponse.latestStories) {\r\n if (this.storyGroupings[count].length >= 4) count++;\r\n if (!this.storyGroupings[count]) this.storyGroupings[count] = [];\r\n this.storyGroupings[count].push(story);\r\n }\r\n }\r\n\r\n changeStory(story: FeaturedStoriesModel, i) {\r\n this.videoUrl = \"\";\r\n this.images = story.images;\r\n this.video = story.video;\r\n this.audio = story.audio;\r\n this.document = story.document;\r\n this.selectedFs = story;\r\n if (story.mediaType == \"Image\") {\r\n this.backgroundUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.mediaType == \"Video\") {\r\n this.videoUrl = story.fullHDUrl;\r\n this.featuredEmbeddedCode = null;\r\n }\r\n if (story.featuredEmbeddedCode) {\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n story.featuredEmbeddedCode\r\n );\r\n }\r\n this.activeSlide = i;\r\n }\r\n\r\n moveLeftBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll - moveAmount;\r\n if (this.brandsCurrentScroll < 0) this.brandsCurrentScroll = 0;\r\n }\r\n\r\n moveRightBrands() {\r\n const moveAmount = window.innerWidth;\r\n this.brandsCurrentScroll = this.brandsCurrentScroll + moveAmount;\r\n if (this.brandsCurrentScroll > this.brandsMaxScroll - this.innerWidth)\r\n this.brandsCurrentScroll = this.brandsMaxScroll - this.innerWidth;\r\n }\r\n\r\n prevSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != 0) {\r\n this.activeSlide = this.activeSlide - 1;\r\n } else {\r\n this.activeSlide = this.fStories.length - 1;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n nextSlide() {\r\n this.featuredEmbeddedCode = null;\r\n if (this.activeSlide != this.fStories.length - 1) {\r\n this.activeSlide = this.activeSlide + 1;\r\n } else {\r\n this.activeSlide = 0;\r\n }\r\n this.changeSlide();\r\n }\r\n\r\n changeSlide() {\r\n this.selectedFs = this.fStories[this.activeSlide];\r\n this.backgroundUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n for (const x of this.fStories) {\r\n if (x.mediaType == \"Video\") {\r\n this.videoUrl = this.fStories[this.activeSlide].fullHDUrl;\r\n }\r\n }\r\n\r\n if (this.selectedFs.featuredEmbeddedCode) {\r\n this.featuredEmbeddedCode = this.sanitizer.bypassSecurityTrustHtml(\r\n this.selectedFs.featuredEmbeddedCode\r\n );\r\n this.selectedFs.mediaType = null;\r\n this.backgroundUrl = \"\";\r\n }\r\n this.nextFStories = [];\r\n for (let i = this.activeSlide + 1; this.nextFStories.length < 4; i++) {\r\n if (i >= this.fStories.length) i = 0;\r\n this.nextFStories.push(this.fStories[i]);\r\n }\r\n }\r\n\r\n readMore(id, title) {\r\n localStorage.setItem(\"storyId\", JSON.stringify(id));\r\n if (localStorage.getItem(\"Token\") === null) {\r\n this.user.id = null;\r\n }\r\n if (this.user.cmsUser == null) {\r\n this.googleAnalytics.emitEvent(\r\n \"story/\" + id.staggingStoryId,\r\n \"view\",\r\n this.user.id ? this.user.id.toString() : \"anonymous\"\r\n );\r\n }\r\n this.googleAnalytics.emitArticleEvent(\"homepage\", id.staggingStoryId);\r\n this.googleAnalytics.emitReadMoreEvent(\r\n \"slider\",\r\n title,\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title)\r\n );\r\n this.router.navigate([\r\n \"/story/\" + id.staggingStoryId + \"/\" + UrlHelper.getUrlTitle(title),\r\n ]);\r\n }\r\n\r\n toggleSavedStory(storyId) {\r\n if (this.inSavedStories(storyId))\r\n this.savedStoryService\r\n .remove(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n else\r\n this.savedStoryService\r\n .add(storyId)\r\n .then((response: any) => { })\r\n .catch((error) => {\r\n console.error(error);\r\n });\r\n }\r\n\r\n inSavedStories(storyId) {\r\n return this.savedStoryService.inSavedStories(storyId);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ language.addStoryToFav }}\r\n
\r\n\r\n 0\" [image]=\"selectedFs?.thumbUrl\"\r\n [title]=\"selectedFs?.storyTitle\" [description]=\"selectedFs?.shortDescription\" [big]=\"false\"\r\n [horizontal]=\"true\" [shared]=\"selectedFs?.shared\" [sbUrl]=\"getFeaturedStoryUrl()\"\r\n [staggingStoryId]=\"selectedFs?.staggingStoryId\" [mediaId]=\"selectedFs?.mediaId\"\r\n [storyId]=\"selectedFs?.storyId\" [socials]=\"homeModelResponse.socialSharing\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{category}}\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n

\r\n {{ selectedFs?.storyTitle }}\r\n

\r\n

\r\n {{ selectedFs?.shortDescription }}\r\n

\r\n
\r\n
\r\n {{ language.readMore }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n

\r\n {{ language.latestStory }}\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
0\" class=\"brands\">\r\n
\r\n

\r\n {{ language.brands }}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n"],"sourceRoot":"webpack:///"}