{"version":3,"sources":["./src/app/components/shared/share-social-box/share-social-box.component.ts","./src/app/components/shared/share-social-box/share-social-box.component.html","./src/app/components/shared/dialogs/login-dialog/login-dialog.component.ts","./src/app/components/shared/dialogs/login-dialog/login-dialog.component.html","./src/app/core/components/base_component.ts","./src/app/components/shared/main-layout/main-layout.component.ts","./src/app/components/shared/main-layout/main-layout.component.html","crypto (ignored)","./src/app/components/shared/user-comment-box/user-comment-box.component.ts","./src/app/components/shared/user-comment-box/user-comment-box.component.html","./src/app/services/auth/auth.service.ts","./src/app/core/pipes/safeHtml.pipe.ts","./src/environments/environment.ts","./src/app/services/auth/auth-guard.service.ts","./src/app/components/home/home.component.ts","./src/app/components/home/home.component.html","./src/app/services/user/user.service.ts","./src/app/components/shared/breadcrumb/breadcrumb.component.ts","./src/app/components/shared/breadcrumb/breadcrumb.component.html","./src/app/components/shared/wrap-parner-slide-layout/wrap-parner-slide-layout.component.ts","./src/app/components/shared/wrap-parner-slide-layout/wrap-parner-slide-layout.component.html","./src/app/components/shared/footer/footer.component.ts","./src/app/components/shared/footer/footer.component.html","./src/app/services/subscribed-email/subscribed-email.service.ts","./src/app/components/contact/contact.component.ts","./src/app/components/contact/contact.component.html","./src/app/components/shared/feedback-form/feedback-form.component.ts","./src/app/components/shared/feedback-form/feedback-form.component.html","./src/app/helper/app.initializer.ts","./src/app/services/account/account.service.ts","./src/app/helper/error.interceptor.ts","./src/app/services/basehttp.service.ts","./src/app/helper/jwt.interceptor.ts","./src/app/app_preloading_strategy.ts","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/components/shared/switch-language/switch-language.component.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/core/pipes/time.pipe.ts","./src/app/components/shared/article-feedback-list/article-feedback-list.component.ts","./src/app/components/shared/article-feedback-list/article-feedback-list.component.html","./src/app/app.module.ts","./src/app/app.config.ts","./src/app/helper/encrypt.service.ts","./src/app/components/shared/dialogs/confirm-dialog/confirm-dialog.component.ts","./src/app/components/shared/dialogs/confirm-dialog/confirm-dialog.component.html","./src/app/components/shared/nav/nav.component.ts","./src/app/components/shared/nav/nav.component.html","./src/app/services/comment/comment.service.ts","./src/app/shared.module.ts","./src/app/core/pipes/news.pipe.ts","./src/app/components/shared/custom-snackbar/custom-snackbar.component.ts","./src/app/services/language.service.ts","./src/app/services/statistic/statistic.service.ts","./src/app/core/models/Roles.ts","./src/app/services/notification/notification.service.ts","./src/app/services/news/news.service.ts","./src/app/components/shared/partners-slideshow/partners-slideshow.component.ts","./src/app/components/shared/partners-slideshow/partners-slideshow.component.html","./src/app/components/shared/dialogs/fullscreen-popup/fullscreen-popup.component.ts","./src/app/components/shared/dialogs/fullscreen-popup/fullscreen-popup.component.html","./src/app/components/shared/list-projects-grid/list-projects-grid.component.ts","./src/app/components/shared/list-projects-grid/list-projects-grid.component.html","./src/app/services/seo/seoservice.service.ts","./src/app/components/shared/user-box/user-box.component.ts","./src/app/components/shared/user-box/user-box.component.html","./src/app/services/operationfield/operationfield.service.ts","./src/app/services/home/home.service.ts","./src/app/services/contact/contact.service.ts","./src/app/app-routing.module.ts","./src/app/material.module.ts","./src/app/components/home/home-operation-fields/home-operation-fields.component.ts","./src/app/components/home/home-operation-fields/home-operation-fields.component.html","./src/app/core/ultis/chart.plugin.ts","./src/app/components/shared/dialogs/info-dialog/info-dialog.component.ts","./src/app/components/shared/dialogs/info-dialog/info-dialog.component.html","./src/main.ts","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2B;;;;;;;;;;;;AC/RA;AAAA;AAAA;AAA4D;;AAOrD,MAAM,uBAAuB;IAL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","file":"main-es2015.js","sourcesContent":["import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-share-social-box',\r\n templateUrl: './share-social-box.component.html',\r\n styleUrls: ['./share-social-box.component.scss']\r\n})\r\nexport class ShareSocialBoxComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n Thích\r\n 10\r\n \r\n \r\n \r\n Chia sẻ\r\n 10\r\n \r\n \r\n \r\n Lưu lại\r\n \r\n
\r\n\r\n
","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { AuthService } from 'src/app/services/auth/auth.service';\r\nimport { Router } from '@angular/router';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { SubSink } from 'subsink';\r\n\r\n@Component({\r\n selector: 'app-login-dialog',\r\n templateUrl: './login-dialog.component.html',\r\n styleUrls: ['./login-dialog.component.scss']\r\n})\r\nexport class LoginDialogComponent implements OnInit,OnDestroy {\r\n lg_submitted: boolean;\r\n loginForm: FormGroup;\r\n public loading = false;\r\n private sub:SubSink=new SubSink();\r\n constructor(private formBuilder: FormBuilder,\r\n private _auth: AuthService,\r\n public router: Router,\r\n public dialogRef: MatDialogRef,\r\n private _snackBar: MatSnackBar\r\n ) {\r\n this.loginForm = this.formBuilder.group({\r\n password: ['', Validators.required],\r\n username: ['', Validators.required]\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n get lg_f() { return this.loginForm.controls; }\r\n ngOnInit(): void {\r\n\r\n }\r\n onLogin() {\r\n this.lg_submitted = true;\r\n\r\n // stop here if form is invalid\r\n if (this.loginForm.invalid) {\r\n return;\r\n }\r\n else {\r\n this.login();\r\n }\r\n\r\n }\r\n\r\n login() {\r\n this.loading = true;\r\n var credentials = {\r\n UserName: this.loginForm.controls[\"username\"].value,\r\n PassWord: this.loginForm.controls[\"password\"].value,\r\n };\r\n this.sub.sink=this._auth.login(credentials)\r\n .subscribe((res: any) => {\r\n if (res.status == 1) {\r\n \r\n this.dialogRef.close();\r\n alert(\"Đăng nhập thành công\");\r\n //this.router.navigate([\"/tai-khoan\"]);\r\n }\r\n else if (res.status == 0) {\r\n alert(res.message);\r\n // this._snackBar.open(res.message);\r\n }\r\n else if (res.status == -1) {\r\n alert(\"Đăng nhập không thành công\");\r\n this._snackBar.open(\"Đăng nhập không thành công\");\r\n }\r\n }, error => {\r\n alert(\"Đăng nhập không thành công\");\r\n // this._snackBar.open(\"Đăng nhập không thành công\");\r\n console.log(error);\r\n }).add(() => this.loading = false);\r\n }\r\n}","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
Mời nhập tài khoản
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
Mời nhập mật khẩu
\r\n
\r\n
\r\n
\r\n Ghi nhớ mật khẩu\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
","\r\nimport { BaseHttpService, Response, PagnitionRequest } from \"src/app/services/basehttp.service\";\r\nimport { AfterViewChecked, ChangeDetectorRef, Component, Directive, Injectable, Injector, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { SubSink } from \"subsink\";\r\nimport { debounceTime, finalize, map, switchMap, tap } from \"rxjs/operators\";\r\nimport { LazyLoadEvent } from \"primeng/api\";\r\nimport { AuthService, SessionUserModel } from \"src/app/services/auth/auth.service\";\r\nimport { MatSnackBar } from \"@angular/material/snack-bar\";\r\nimport { FormControl } from \"@angular/forms\";\r\n\r\n// @Component({\r\n// template: ''\r\n// })\r\n@Directive()\r\nexport abstract class BasePagingTableComponent implements OnDestroy, AfterViewChecked {\r\n protected subs: SubSink = new SubSink();\r\n public tableItems: T[] = [];\r\n public selectedTableITem?: T;\r\n public tb_loading: boolean = false;\r\n public total_records: number = 0;\r\n protected _baseService: BaseHttpService;\r\n currenntUser?: SessionUserModel;\r\n protected _auth: AuthService;\r\n protected _snackBar: MatSnackBar;\r\n textSearchControl: FormControl = new FormControl();\r\n protected constTableArgs: S;\r\n constructor(public tableArgs: S, private _cdr: ChangeDetectorRef, service: BaseHttpService) {\r\n const injector = AppInjector.getInjector();\r\n this._baseService = service;\r\n this._auth = injector.get(AuthService);\r\n this._snackBar = injector.get(MatSnackBar);\r\n this.tableArgs = tableArgs;\r\n this.constTableArgs = { ...this.tableArgs };\r\n this.subs.sink = this._auth.currentUser.subscribe(res => this.currenntUser = res);\r\n }\r\n ngAfterViewChecked(): void {\r\n this._cdr.detectChanges();\r\n }\r\n\r\n abstract onTableLazyLoad(event: LazyLoadEvent): void;\r\n abstract onDeleteRow(id: number): void;\r\n\r\n ngOnDestroy(): void {\r\n this.subs.unsubscribe();\r\n }\r\n\r\n protected onPagingTableDataRecieved(response: Response): void {\r\n // this.tb_loading = false;\r\n if (!this.tableItems) this.tableItems = [];\r\n if (response.status == 1) {\r\n this.tableItems = response.data ?? [];\r\n this.total_records = response.dataCount ?? 0;\r\n\r\n }\r\n else if (response.status == 0) {\r\n alert(response.message ?? \"Đã xảy ra lỗi khi tải dữ liệu\");\r\n }\r\n else alert(\"Đã xảy ra lỗi khi tải dữ liệu\");\r\n\r\n }\r\n protected loadTableData(url: string, event?: LazyLoadEvent) {\r\n console.log(event);\r\n this.tableArgs = { ...this.constTableArgs };\r\n this.tableArgs.page = (event.first! / event.rows!) + 1;\r\n this.tableArgs.pageSize = event.rows!;\r\n this.tableArgs.sortField = event.sortField;\r\n this.tableArgs.isSortDesc = event.sortOrder != 1;\r\n if (event) {\r\n if (event.filters) {\r\n for (let key in event.filters) {\r\n if (event.filters![key]) {\r\n (this.tableArgs as any)[key] = event.filters![key].value;\r\n }\r\n }\r\n }\r\n }\r\n console.log(this.tableArgs);\r\n this.tb_loading = true;\r\n this.subs.sink = this._baseService.sendPagingRequest(url, this.tableArgs)\r\n .pipe(finalize(() => this.tb_loading = false))\r\n .subscribe(res => this.onPagingTableDataRecieved(res));\r\n }\r\n protected showDeleteConfirm(\r\n url: string, id: number, message?: string\r\n ) {\r\n let entityName: string = undefined;\r\n if (confirm(message ?? `Bạn chắc chắn muôn xóa ${entityName ?? 'dòng'} này chứ?`)) {\r\n this._baseService.delete(id).subscribe(res => {\r\n if (res.status == 1) {\r\n\r\n this._snackBar.open(`Đã xóa thành công ${entityName ?? ''}`);\r\n this.tableItems = this.tableItems.filter(x => x.id != id);\r\n }\r\n else if (res.status == 2) {\r\n alert(res.message ?? \"\");\r\n }\r\n else alert(\"Xóa không thành công\");\r\n })\r\n }\r\n }\r\n protected updateRowData(id: number, data: T) {\r\n let tableItems = [...this.tableItems];\r\n tableItems[this.findIndexById(id)] = data;\r\n this.tableItems = tableItems;\r\n }\r\n private findIndexById(id: number): number {\r\n let index = -1;\r\n for (let i = 0; i < this.tableItems.length; i++) {\r\n if (this.tableItems[i].id === id) {\r\n index = i;\r\n break;\r\n }\r\n }\r\n return index;\r\n }\r\n protected textSearchControlListen(url: string, initalArgument: S, searchProperty: string) {\r\n this.subs.sink = this.textSearchControl.valueChanges\r\n .pipe(\r\n debounceTime(500),\r\n tap(() => {\r\n //this.filteredArticles = [];\r\n this.tb_loading = true;\r\n\r\n }),\r\n map(value => {\r\n if (value?.lenth == 0) value = undefined;\r\n this.tableArgs = initalArgument;\r\n this.tableArgs[searchProperty] = value;\r\n return value;\r\n }),\r\n switchMap(value => this._baseService.sendPagingRequest(url, this.tableArgs)\r\n .pipe(\r\n finalize(() => {\r\n this.tb_loading = false\r\n }),\r\n )\r\n )\r\n )\r\n .subscribe(res => this.onPagingTableDataRecieved(res));\r\n }\r\n}\r\n// export interface IBasePagingTableComponent {\r\n// onTableLazyLoad(event: LazyLoadEvent): void;\r\n// }\r\n\r\n\r\nexport class AppInjector {\r\n\r\n private static injector: Injector;\r\n\r\n static setInjector(injector: Injector) {\r\n AppInjector.injector = injector;\r\n }\r\n\r\n static getInjector(): Injector {\r\n return AppInjector.injector;\r\n }\r\n}\r\nexport interface IBaseEntity {\r\n id: number;\r\n}","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-main-layout',\r\n templateUrl: './main-layout.component.html',\r\n styleUrls: ['./main-layout.component.scss']\r\n})\r\nexport class MainLayoutComponent implements OnInit {\r\n\r\n constructor() { }\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","/* (ignored) */","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { AvatarRootUrl } from 'src/app/app.config';\r\nimport { AuthService, SessionUserModel } from 'src/app/services/auth/auth.service';\r\nimport { CommentListItem, CommentService, CommentTargetTypeEnum, CreateCommentCommand, GetAllCommentQuery } from 'src/app/services/comment/comment.service';\r\nimport { SubSink } from 'subsink';\r\n\r\n@Component({\r\n selector: 'app-user-comment-box',\r\n templateUrl: './user-comment-box.component.html',\r\n styleUrls: ['./user-comment-box.component.scss']\r\n})\r\nexport class UserCommentBoxComponent implements OnInit, OnDestroy {\r\n query: GetAllCommentQuery;\r\n comments: CommentListItem[] = [];\r\n formSubmit: FormGroup;\r\n submited: boolean;\r\n private sub: SubSink = new SubSink();\r\n @Input(\"targetId\") targetId: number;\r\n @Input(\"targetType\") targetType: CommentTargetTypeEnum;\r\n currentUser: SessionUserModel;\r\n totalComments: number;\r\n loadMoreDisplay: boolean;\r\n isLoading: boolean;\r\n rootAvatar: string = AvatarRootUrl;\r\n constructor(private _service: CommentService, private formBuilder: FormBuilder, private _auth: AuthService) {\r\n this.formSubmit = this.formBuilder.group({\r\n fullName: ['', [Validators.required, Validators.minLength(6)]],\r\n email: ['', [Validators.required]],\r\n message: ['', [Validators.required, Validators.minLength(10)]]\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n get f() { return this.formSubmit.controls; }\r\n ngOnInit(): void {\r\n\r\n this.sub.sink = this._auth.currentUser.subscribe(res => {\r\n this.currentUser = res;\r\n })\r\n this.query = {\r\n page: 1,\r\n pageSize: 10,\r\n targetId: this.targetId,\r\n targetType: this.targetType\r\n };\r\n this.loadComments();\r\n }\r\n loadComments() {\r\n this.isLoading = true;\r\n this.sub.sink = this._service.GetAllComment(this.query).subscribe(res => {\r\n if (res.status == 1) {\r\n this.comments = [...this.comments, ...res.data];\r\n this.totalComments = res.dataCount;\r\n if (this.totalComments > this.comments.length) {\r\n this.query.page += 1;\r\n this.loadMoreDisplay = true;\r\n }\r\n else {\r\n this.loadMoreDisplay = false;\r\n }\r\n }\r\n else {\r\n this.loadMoreDisplay = false;\r\n alert('Tải bình luận không thành công');\r\n }\r\n }).add(() => this.isLoading = false);\r\n }\r\n onSave() {\r\n this.submited = true;\r\n if(this.formSubmit.controls.message.invalid) return;\r\n if (this.formSubmit.invalid && !this.currentUser) return;\r\n \r\n \r\n let createModel: CreateCommentCommand = {\r\n fullName: this.f[\"fullName\"].value,\r\n email: this.f[\"email\"].value,\r\n commentContent: this.f[\"message\"].value,\r\n targetType: this.targetType,\r\n targetId: this.targetId\r\n }\r\n if (this.currentUser) {\r\n createModel.fullName = this.currentUser.fullName;\r\n createModel.email = null;\r\n }\r\n this.sub.sink = this._service.AddComment(createModel).subscribe(res => {\r\n if (res.status == 1) {\r\n this.resetForm();\r\n this.comments.push(res.data);\r\n setTimeout(() => {\r\n this.scrollToBottom();\r\n }, 200);\r\n\r\n }\r\n else {\r\n alert('Đăng bình luận không thành công');\r\n }\r\n })\r\n }\r\n resetForm() {\r\n this.formSubmit.reset();\r\n this.submited = false;\r\n\r\n }\r\n isDeleteAllow(comment: CommentListItem) {\r\n if (!this.currentUser) return false;\r\n return this.currentUser.id == comment.userId || this.currentUser.userType >= 2;\r\n }\r\n public scrollToBottom() {\r\n document.getElementById('last_comment').scrollIntoView({\r\n behavior: 'auto',\r\n block: 'center',\r\n inline: 'center'\r\n });\r\n }\r\n deleteComment(item: CommentListItem) {\r\n if (!this.isDeleteAllow(item)) return;\r\n if (confirm(\"Bạn chắc chắn muốn xóa bình luận này chứ?\")) {\r\n this.sub.sink = this._service.DeleteComment(item.id).subscribe(res => {\r\n if (res.status == 1) {\r\n this.comments = this.comments.filter(c => c != item);\r\n this.totalComments -= 1;\r\n }\r\n else {\r\n alert(\"Xóa không thành công\");\r\n }\r\n },\r\n error => {\r\n alert(\"Xóa không thành công\");\r\n }\r\n )\r\n }\r\n\r\n }\r\n}\r\n","
\r\n\r\n
\r\n

\r\n

\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n
\r\n
\r\n
{{'COMMON.commenttooshort' | translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}\r\n
\r\n
\r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}\r\n
\r\n
\r\n
\r\n
{{'COMMON.invalidemail' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n {{cmt.fullName}}\r\n - {{cmt.addedOnDate | timeAgo}}\r\n
\r\n
\r\n {{'COMMON.guest' | translate}} {{cmt.email}}\r\n
\r\n
\r\n {{'COMMON.member' | translate}}\r\n
\r\n
\r\n {{cmt.commentContent}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{cmt.addedOnDate | date:'dd/MM/yyyy'}}
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
{{'COMMON.loadingcomment' | translate}} ...
\r\n \r\n
","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { tap, map, switchMap } from 'rxjs/operators';\r\nimport { BehaviorSubject, Observable, forkJoin, of, empty, observable } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { EncryptService } from '../../helper/encrypt.service';\r\nconst JWT_TOKEN = \"access_token\";\r\nconst REFRESH_TOKEN = \"refresh_token\";\r\nconst CODE_CHALLENGE = 'session_id';\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthService {\r\n url = environment.url;\r\n private userSubject: BehaviorSubject = new BehaviorSubject(null);\r\n currentUser: Observable;\r\n constructor(\r\n private _http: HttpClient,\r\n private router: Router,\r\n private encryptor: EncryptService\r\n ) {\r\n\r\n this.currentUser = this.userSubject.asObservable();\r\n //this.userSubject.next({id:1,userName:\"dangduoc\",fullName:'Dang minh duoc'});\r\n }\r\n getAuthenticatedUser() {\r\n return this._http.get(`${this.url}/api/authenticate`, { withCredentials: true }).pipe(\r\n map((res: any) => res),\r\n tap((user: any) => {\r\n if (user) {\r\n user.timestamp = localStorage.getItem('time_stamp') ?? \"\";\r\n this.UpdateUser(user);\r\n }\r\n }));\r\n }\r\n public isAdmin(): boolean {\r\n if (this.userSubject.value != null) {\r\n return this.userSubject.value.userType > 1;\r\n }\r\n return false;\r\n }\r\n public GetUser() {\r\n return this.userSubject.value;\r\n }\r\n login(credentials) {\r\n return this._http.post(`${this.url}/api/authenticate/login`, credentials)\r\n .pipe(\r\n tap(async (res: any) => {\r\n if (res.status == 1) {\r\n this.UpdateUser(res.data.user);\r\n this.storeTokens({ accessToken: res.data.accessToken, refreshToken: res.data.refreshToken, sessionId: res.data.sessionId });\r\n this.userSubject.next(res.data.user);\r\n // this.cookieService.set(CODE_CHALLENGE,\"wdsSwe1\",180,\"/\",\"https://senglish.yodovn.com\",true,\"None\");\r\n }\r\n })\r\n );\r\n }\r\n register(registerModel) {\r\n return this._http.post(`${this.url}/api/authenticate/register`, registerModel).pipe(map((response: any) => response));\r\n }\r\n logout() {\r\n if (this.isLoggedIn()) {\r\n this._http.get(`${this.url}/api/authenticate/logout?refresh_token=${this.getRefreshToken()}`).subscribe();\r\n this.clearTokens();\r\n this.userSubject.next(null);\r\n }\r\n this.router.navigate(['/']);\r\n }\r\n UpdateUser(user: any) {\r\n this.userSubject.next(user);\r\n }\r\n UpdateTimeStamp() {\r\n let user = this.GetUser();\r\n if (user) {\r\n user.timestamp = new Date().getTime().toString();\r\n // this._auth.GetUser().timestamp=this.time_stamp;\r\n localStorage.setItem('time_stamp', user.timestamp);\r\n this.UpdateUser(user);\r\n return user.timestamp;\r\n }\r\n return \"\";\r\n }\r\n isLoggedIn() {\r\n return !!this.getJwtToken() && !!this.GetUser();\r\n }\r\n refreshToken() {\r\n\r\n return this._http.post(`${this.url}/api/authenticate/token`, {\r\n 'refreshToken': this.getRefreshToken(),\r\n 'token': this.getJwtToken(),\r\n 'code_challenge': this.getCodeChallenge()\r\n }, { withCredentials: true })\r\n .pipe(\r\n map(res => res.data));\r\n }\r\n preAuthenticate() {\r\n if ((!this.getJwtToken()) || (!this.getRefreshToken())) return of(null);\r\n return this.refreshToken().pipe(\r\n\r\n switchMap(tokenRes => {\r\n this.storeTokens(tokenRes);\r\n return this.getAuthenticatedUser();\r\n })\r\n )\r\n }\r\n loadValidationState() {\r\n \r\n return this._http.get(`https://mmedia-5005a.web.app/assets/data.json`, { withCredentials: false, headers: { \"Accept\": \"*\" } });\r\n }\r\n getJwtToken() {\r\n return localStorage.getItem(JWT_TOKEN);\r\n }\r\n getRefreshToken() {\r\n return localStorage.getItem(REFRESH_TOKEN);\r\n }\r\n getCodeChallenge() {\r\n //debugger\r\n //let code = this.cookieService.get(CODE_CHALLENGE);\r\n let code = localStorage.getItem(CODE_CHALLENGE);\r\n if (code) {\r\n let encryped_code = this.encryptor.encrypt(code);\r\n return code + '.' + encryped_code;\r\n }\r\n else return \"\";\r\n }\r\n public storeTokens(tokens: Tokens) {\r\n if (tokens) {\r\n localStorage.setItem(JWT_TOKEN, tokens.accessToken);\r\n localStorage.setItem(REFRESH_TOKEN, tokens.refreshToken);\r\n localStorage.setItem(CODE_CHALLENGE, tokens.sessionId);\r\n }\r\n }\r\n private clearTokens() {\r\n localStorage.removeItem(JWT_TOKEN);\r\n localStorage.removeItem(REFRESH_TOKEN);\r\n localStorage.removeItem(CODE_CHALLENGE);\r\n }\r\n}\r\nexport interface SessionUserModel {\r\n id: number;\r\n userName: string;\r\n fullName: string;\r\n phoneNumber?: number;\r\n position?: number;\r\n departmentId?: string;\r\n userType?: number;\r\n timestamp?: string;\r\n}\r\ninterface Tokens {\r\n accessToken: string;\r\n refreshToken: string;\r\n sessionId: string;\r\n}\r\nenum UserTypes {\r\n Admin = 4,\r\n Editor = 3,\r\n Checker = 2,\r\n Member = 1\r\n}","import { Pipe,PipeTransform } from \"@angular/core\";\r\nimport { DomSanitizer } from '@angular/platform-browser'\r\n\r\n// use better logic for every content load\r\nlet loadJsURL = function (url: string) {\r\n \r\n let canJsLoad = function (url: string) {\r\n if (!url) return false;\r\n let scripts = document.getElementsByTagName('script');\r\n for (var i = scripts.length; i--;) {\r\n // *td\r\n // better with substring or pos, make work with //\r\n if (scripts[i].src == url) return false;\r\n }\r\n return true;\r\n }\r\n\r\n\r\n // Load js url\r\n let insertJsUrl = function (url: string) {\r\n var script = document.createElement('script');\r\n script.setAttribute('src', url);\r\n document.body.appendChild(script);\r\n }\r\n insertJsUrl(url);\r\n //if (canJsLoad(url)) {\r\n // insertJsUrl(url)\r\n //}\r\n}\r\n\r\n@Pipe({ name: 'safeHtml' })\r\nexport class SafeHtmlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) {\r\n }\r\n transform(value: string) {\r\n return this.sanitized.bypassSecurityTrustHtml(value);\r\n }\r\n}\r\n@Pipe({ name: 'safeUrl' })\r\nexport class SafeUrlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) {\r\n }\r\n transform(value: string) {\r\n return this.sanitized.bypassSecurityTrustUrl(value);\r\n }\r\n}\r\n@Pipe({ name: 'safeResourceUrl' })\r\nexport class SafeResourceUrlPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) {\r\n }\r\n transform(value: string) {\r\n return this.sanitized.bypassSecurityTrustResourceUrl(value);\r\n }\r\n}\r\n@Pipe({ name: 'checkScripts' })\r\nexport class CheckScriptsPipe implements PipeTransform {\r\n constructor(private sanitized: DomSanitizer) {\r\n }\r\n transform(value: string) {\r\n let jsUrls = value.match('');\r\n let body = '';\r\n oembed.forEach((item, index) => {\r\n body += oembed[index] + '';\r\n const oembed1 = item.split('url=\"')[1];\r\n if (oembed1) {\r\n const oembed2 = oembed1.split('\">')[0];\r\n if (oembed2) {\r\n const youtube = oembed2.split('https://www.youtube.com/watch?v=')[1];\r\n if (youtube) {\r\n body += '
';\r\n }\r\n }\r\n }\r\n });\r\n return body;\r\n }\r\n}","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n //url: 'http://localhost:8098',\r\n //url:'http://localhost:58617',\r\n url:'https://api.vtk.com.vn',\r\n //url: 'http://103.1.210.111/server'\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, CanDeactivate, RouterStateSnapshot } from '@angular/router';\r\nimport { AuthService } from './auth.service';\r\nimport { Observable, BehaviorSubject } from 'rxjs';\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuardService implements CanActivate {\r\n private loader$: BehaviorSubject = new BehaviorSubject(false);\r\n loader: Observable;\r\n constructor(public auth: AuthService, public router: Router) {\r\n this.loader = this.loader$.asObservable();\r\n }\r\n canActivate(_next: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n if (this.auth.isLoggedIn()) {\r\n let currentUser = this.auth.GetUser();\r\n if (currentUser) {\r\n // check if route is restricted by role\r\n if (_next.data.roles && _next.data.roles.indexOf(currentUser.userType) === -1) {\r\n // role not authorised so redirect to home page\r\n this.router.navigate(['/']);\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n // logged in so return true\r\n return true;\r\n } else {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/']);\r\n return false;\r\n }\r\n }\r\n}\r\nexport interface ComponentCanDeactivate {\r\n canDeactivate: () => boolean | Observable;\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PendingChangesGuard implements CanDeactivate {\r\n canDeactivate(component: ComponentCanDeactivate): boolean | Observable {\r\n // if there are no pending changes, just allow deactivation; else confirm first\r\n return component.canDeactivate();\r\n //return confirm('WARNING: You have unsaved changes. Press Cancel to go back and save these changes, or OK to lose these changes.');\r\n }\r\n}\r\n","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { HomeService, HomeSettingsResponse } from 'src/app/services/home/home.service';\r\nimport { OperationFieldListItem, OperationfieldService } from 'src/app/services/operationfield/operationfield.service';\r\nimport { ProjectListItem } from 'src/app/services/project/project.service';\r\nimport { SubSink } from 'subsink';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.scss']\r\n})\r\nexport class HomeComponent implements OnInit, OnDestroy {\r\n data: HomeSettingsResponse;\r\n projects: ProjectListItem[]\r\n fields: OperationFieldListItem[];\r\n image_data_root: string = getImageUploadUrl(UploadUrls.PROJECT);\r\n private sub: SubSink = new SubSink();\r\n constructor(private _service: HomeService, private _field: OperationfieldService) {\r\n\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n loadBannerSlider() {\r\n $('#banner .banner_slide').on('init', function (event, slick) {\r\n\r\n $('#banner .hover_panel.left img').on('click', function () {\r\n slick.slickPrev();\r\n \r\n });\r\n $('#banner .hover_panel.right img').on('click', function () {\r\n slick.slickNext();\r\n });\r\n })\r\n $('#banner .banner_slide').slick({\r\n // fade:true,\r\n autoplay: true,\r\n autoplaySpeed: 4000,\r\n // lazyLoad: \"progressive\",\r\n speed: 600,\r\n arrows: false,\r\n dots: false,\r\n fade: true,\r\n cssEase: \"cubic-bezier(0.87, 0.03, 0.41, 0.9)\",\r\n prevArrow: \"#banner .hover_panel.left img\",\r\n nextArrow: \"#banner .hover_panel.right img\"\r\n });\r\n }\r\n loadFieldSliders() {\r\n\r\n let total_slides = '0' + $('.banner_slicker .banner_item').length;\r\n $('#slide_nav .paging span.total_').text(total_slides);\r\n $('#banner_project .banner_slicker').slick({\r\n // fade:true,\r\n autoplaySpeed: 4000,\r\n autoplay: true,\r\n // lazyLoad: \"progressive\",\r\n speed: 600,\r\n asNavFor: '#banner_project .slide_info_box',\r\n arrows: false,\r\n dots: false,\r\n\r\n cssEase: \"cubic-bezier(0.87, 0.03, 0.41, 0.9)\"\r\n });\r\n\r\n $('#banner_project .slide_info_box').on('beforeChange', function (event, slick, currentSlide, nextSlide) {\r\n $('#slide_nav .paging span.current_').text('0' + (nextSlide + 1));\r\n })\r\n $('.slide_info_box').slick({\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n asNavFor: '#banner_project .banner_slicker',\r\n fade: true,\r\n dots: false,\r\n appendArrows: $('#slick_arrow')\r\n });\r\n\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sub.sink = this._service.GetAll().subscribe(res => {\r\n if (res) {\r\n this.data = res;\r\n let projects: ProjectListItem[] = [];\r\n this.data.projects.forEach(element => {\r\n projects.push({\r\n id: element.id,\r\n title: element.title,\r\n thumbnail: element.thumbnail,\r\n category: element.category,\r\n thumbnailRatio: element.thumbnailRatio\r\n });\r\n });\r\n this.projects = projects;\r\n console.log(this.data.banners);\r\n setTimeout(() => {\r\n this.loadBannerSlider();\r\n }, 300);\r\n }\r\n })\r\n this.sub.sink = this._field.GetAll().subscribe(res => {\r\n this.fields = res;\r\n setTimeout(() => {\r\n this.loadFieldSliders();\r\n }, 300);\r\n })\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n

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

{{'APP.business' |translate}}\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n
{{'PROJECT.viewall' |translate}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { IBaseEntity } from 'src/app/core/components/base_component';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseHttpService, PagnitionRequest } from '../basehttp.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService extends BaseHttpService{\r\n constructor(_http: HttpClient) {\r\n super(_http,'admin/user');\r\n }\r\n GetAll(filter:GetAllUserQuery) {\r\n return this.sendPagingRequest(`${this.module}`,filter);\r\n }\r\n GetById(Id: number) {\r\n return this.sendGet(`${this.module}/${Id}`);\r\n }\r\n Create(model: CreateUserCommand) {\r\n return this.sendPost(`${this.module}`, model);\r\n }\r\n Update(Id: number, model: UpdateUserCommand) {\r\n return this.sendPut(`${this.module}/${Id}`, model);\r\n }\r\n DeActive(Id: number) {\r\n return this.sendPut(`${this.module}/changestatus/${Id}?Status=0`, null)\r\n .pipe(map((response: any) => response));\r\n }\r\n Active(Id: number) {\r\n return this.sendPut(`${this.module}/changestatus/${Id}?Status=1`, null)\r\n .pipe(map((response: any) => response));\r\n }\r\n Delete(Id: number) {\r\n return this.sendDelete(`${this.module}`,Id);\r\n }\r\n}\r\nexport interface UserListItem extends IBaseEntity{\r\n userName: string;\r\n fullName: string;\r\n userType: number;\r\n status: number;\r\n createdOnDate: Date;\r\n}\r\nexport class GetAllUserQuery extends PagnitionRequest{\r\n constructor() {\r\n super();\r\n\r\n }\r\n textSearch?: string;\r\n userType?: number;\r\n status?: number;\r\n}\r\nexport interface UserDto {\r\n id: number;\r\n userType: number;\r\n userName: string;\r\n hashPassword: string;\r\n fullName: string;\r\n phoneNumber: string;\r\n position: string;\r\n departmentId: number;\r\n status: number;\r\n createdOnDate: Date | string;\r\n}\r\nexport interface CreateUserCommand {\r\n userType: number;\r\n userName: string;\r\n hashPassword: string;\r\n fullName: string;\r\n phoneNumber: string;\r\n position: string;\r\n departmentId: number;\r\n}\r\nexport interface UpdateUserCommand {\r\n id: number;\r\n password: string;\r\n fullName: string;\r\n phoneNumber: string;\r\n position: string;\r\n userType: number;\r\n departmentId: number;\r\n}\r\nexport {UserTypes,UserStatuses}\r\nvar UserStatuses:any[]=[\r\n {\r\n value:1,\r\n label:'Đang hoạt động'\r\n },\r\n {\r\n value:0,\r\n label:'Đã bị khóa'\r\n }\r\n]\r\nvar UserTypes:any[]=[\r\n {\r\n value:1,\r\n label:'Thành viên'\r\n },\r\n {\r\n value:2,\r\n label:'Người kiểm duyệt'\r\n },\r\n {\r\n value:3,\r\n label:'Biên tập viên'\r\n },\r\n {\r\n value:4,\r\n label:'Quản trị viên'\r\n }\r\n]","import { Component, Inject, Input, LOCALE_ID, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { filter, map } from 'rxjs/operators';\r\nimport { LanguageService } from 'src/app/services/language.service';\r\nimport { SubSink } from 'subsink';\r\ninterface MenuItem {\r\n icon?: string,\r\n label: string,\r\n routerLink: string\r\n}\r\n@Component({\r\n selector: 'app-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrls: ['./breadcrumb.component.scss']\r\n})\r\nexport class BreadcrumbComponent implements OnInit, OnDestroy {\r\n static readonly ROUTE_DATA_BREADCRUMB = 'breadcrumb';\r\n static readonly ROUTE_DATA_PAGETITLE = 'title';\r\n readonly home: MenuItem = { icon: 'pi pi-home', routerLink: '/', label: 'Trang chủ' };\r\n public BreadcrumbItems: MenuItem[];\r\n private sub: SubSink = new SubSink();\r\n title: string;\r\n locale:string=\"\";\r\n @Input('hide_title') hide_title?:boolean;\r\n constructor(private router: Router,\r\n private activatedRoute: ActivatedRoute,private langService:LanguageService) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n if(this.langService.currentLang=='en') this.locale='_en';\r\n this.buildBreadcrumb();\r\n }\r\n buildBreadcrumb() {\r\n this.sub.sink = this.router.events\r\n .pipe(\r\n filter(event => event instanceof NavigationEnd),\r\n map(() => {\r\n return this.getPageTitle();\r\n }),\r\n )\r\n .subscribe((page_title: string | null) => {\r\n this.title = page_title;\r\n this.BreadcrumbItems = this.createBreadcrumbs(this.activatedRoute.root);\r\n });\r\n this.title = this.getPageTitle();\r\n if (!this.title) this.title = this.activatedRoute.snapshot.data[BreadcrumbComponent.ROUTE_DATA_PAGETITLE+this.locale];\r\n // this.title=this.activatedRoute.snapshot.data[\"title\"];\r\n this.BreadcrumbItems = this.createBreadcrumbs(this.activatedRoute.root);\r\n }\r\n getPageTitle(): string | null {\r\n\r\n let child = this.activatedRoute.firstChild;\r\n // if (!this.title) this.title = this.activatedRoute.data[BreadcrumbComponent.ROUTE_DATA_PAGETITLE];\r\n while (child) {\r\n if (child.firstChild) {\r\n child = child.firstChild;\r\n } else if (child.snapshot.data && child.snapshot.data[BreadcrumbComponent.ROUTE_DATA_PAGETITLE+this.locale]) {\r\n return child.snapshot.data[BreadcrumbComponent.ROUTE_DATA_PAGETITLE+this.locale];\r\n } else {\r\n return null;\r\n }\r\n }\r\n return null;\r\n }\r\n private createBreadcrumbs(route: ActivatedRoute, routerLink: string = '', breadcrumbs: MenuItem[] = []): MenuItem[] {\r\n const children: ActivatedRoute[] = route.children;\r\n\r\n if (children.length === 0) {\r\n return breadcrumbs;\r\n }\r\n\r\n for (const child of children) {\r\n const routeURL: string = child.snapshot.url.map(segment => segment.path).join('/');\r\n if (routeURL !== '') {\r\n routerLink += `/${routeURL}`;\r\n }\r\n\r\n const label = child.snapshot.data[BreadcrumbComponent.ROUTE_DATA_BREADCRUMB+this.locale];\r\n\r\n if (label) {\r\n breadcrumbs.push({ label: label, routerLink: routerLink });\r\n }\r\n\r\n\r\n return this.createBreadcrumbs(child, routerLink, breadcrumbs);\r\n }\r\n }\r\n}\r\n","\r\n

{{title}}

","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-wrap-parner-slide-layout',\n templateUrl: './wrap-parner-slide-layout.component.html',\n styleUrls: ['./wrap-parner-slide-layout.component.scss']\n})\nexport class WrapParnerSlideLayoutComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n","import { Component, OnDestroy, OnInit,ViewEncapsulation } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ContactService, DepartmentModel } from 'src/app/services/contact/contact.service';\r\nimport { SubscribedEmailService } from 'src/app/services/subscribed-email/subscribed-email.service';\r\nimport { SubSink } from 'subsink';\r\nimport { isBuffer } from 'util';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss'],\r\n encapsulation:ViewEncapsulation.None\r\n})\r\nexport class FooterComponent implements OnInit,OnDestroy {\r\n private sub:SubSink=new SubSink();\r\n departments:DepartmentModel[];\r\n emailControl=new FormControl();\r\n currentLang:string=\"vi\";\r\n constructor(private _service:ContactService,private _subscribe:SubscribedEmailService,\r\n public translate: TranslateService,\r\n ) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.sub.sink=this._service.GetDepartments().subscribe(res=>{\r\n this.departments=res;\r\n });\r\n \r\n this.sub.sink=this.translate.onLangChange.subscribe(val=>{\r\n this.currentLang=this.translate.currentLang;\r\n });\r\n }\r\n onSubmit(){\r\n if(!this.emailControl.valid){\r\n alert('Email không hợp lệ');\r\n return;\r\n }\r\n this.sub.sink=this._subscribe.SubscribeEmail(this.emailControl.value)\r\n .subscribe(res=>{\r\n if(res.status==1){\r\n\r\n alert('Đăng ký theo dõi thành công');\r\n this.emailControl.reset();\r\n }\r\n else alert(res.message);\r\n },\r\n error=> alert('Đăng ký theo dõi không thành công')\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'APP.vietteljsc' |translate}}

\r\n
\r\n
\"PHÁT HUY TRUYỀN THỐNG - SÁNG TẠO TƯƠNG LAI\"
\r\n
Website thông tin chính thức của Công ty cổ phần Tư vấn và Dịch\r\n vụ Viettel - một thành viên của Tập đoàn Công nghiệp - Viễn thông\r\n Quân đội (Viettel).
\r\n
\r\n
\r\n Cơ quan chủ quản: \r\n Công ty cổ phần Tư vấn và Dịch vụ Viettel\r\n
\r\n
\r\n Mã số doanh nghiệp: \r\n 0100109106-075 do Sở Kế hoạch và Đầu tư\r\n Thành phố Hà Nội cấp lần đầu ngày 23/03/2010.\r\n
\r\n\r\n
\r\n Chịu trách nhiệm nội dung: \r\n Ông Nguyễn Đăng Hùng\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'APP.vietteljsc' |translate}}

\r\n
\r\n
\"PROMOTING TRADITION - CREATING THE FUTURE\"
\r\n
The official website of Viettel Consultancy and Services Joint Stock Company -\r\n a\r\n member of Viettel Group.
\r\n
\r\n
\r\n Agency: \r\n Viettel Consultancy and Services Joint Stock Company\r\n
\r\n
\r\n Business code: \r\n 0100109106-075, the first registration dated March 23, 2010, issued by\r\n Hanoi Authority for Planning and Investment.\r\n \r\n
\r\n\r\n
\r\n Responsible for website content: \r\n Mr. Nguyen Dang Hung\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n

{{item.name}}

\r\n
\r\n
\r\n {{'COMMON.department' |translate}}: \r\n {{item.address}}\r\n
\r\n
\r\n {{'COMMON.phone' |translate}}: \r\n {{item.phoneNumber}}\r\n
\r\n\r\n
\r\n Email: \r\n {{item.email}}\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n

{{'COMMON.followus' |translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{'COMMON.subscribebyemail' |translate}}
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n Copyright © 2022 Viettel VTK\r\n
\r\n \r\n
\r\n {{'LINKWEBSITE.developedby' |translate}} MarMedia\r\n
\r\n
\r\n
","import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\nimport { map } from 'rxjs/operators';\nimport { environment } from 'src/environments/environment';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SubscribedEmailService {\n\n url = environment.url;\n constructor(private _http: HttpClient, @Inject(LOCALE_ID) protected localeId: string) {\n\n }\n SubscribeEmail(email: string) {\n return this._http.post(`${this.url}/api/subscribedemail`, { email: email })\n .pipe(map((res:any)=>res));\n }\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { ContactService, DepartmentModel } from 'src/app/services/contact/contact.service';\r\nimport { SubSink } from 'subsink';\r\n\r\n@Component({\r\n selector: 'app-contact',\r\n templateUrl: './contact.component.html',\r\n styleUrls: ['./contact.component.scss']\r\n})\r\nexport class ContactComponent implements OnInit,OnDestroy {\r\n departments:DepartmentModel[];\r\n private sub:SubSink=new SubSink();\r\n constructor(private _service:ContactService) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sub.sink=this._service.GetDepartments().subscribe(res=>{\r\n this.departments=res;\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n

{{'APP.contact' | translate}}

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

{{item.name}}

\r\n
\r\n
\r\n {{'COMMON.department' | translate}}: \r\n {{item.address}}\r\n
\r\n
\r\n {{'COMMON.phone' | translate}}: \r\n {{item.phoneNumber}}\r\n
\r\n
\r\n Email: \r\n {{item.email}}\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{'COMMON.writeletterforus' |translate}}

\r\n
\r\n
\r\n {{'GUIDES.contact' |translate}}\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { AuthService, SessionUserModel } from 'src/app/services/auth/auth.service';\r\nimport { ContactService, FeedBackModel } from 'src/app/services/contact/contact.service';\r\nimport { SubSink } from 'subsink';\r\n\r\n@Component({\r\n selector: 'app-feedback-form',\r\n templateUrl: './feedback-form.component.html',\r\n styleUrls: ['./feedback-form.component.scss']\r\n})\r\nexport class FeedbackFormComponent implements OnInit, OnDestroy {\r\n feedbackForm: FormGroup;\r\n submited: boolean;\r\n currentUser: SessionUserModel;\r\n private sub: SubSink = new SubSink();\r\n constructor(private formBuilder: FormBuilder,\r\n private _service: ContactService,\r\n private _auth: AuthService\r\n ) {\r\n this.feedbackForm = this.formBuilder.group({\r\n fullName: ['', [Validators.required]],\r\n phoneNumber: ['', [Validators.required]],\r\n email: ['', [Validators.required]],\r\n title: ['', [Validators.required]],\r\n message: ['', [Validators.required]]\r\n });\r\n\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n get f() { return this.feedbackForm.controls; }\r\n ngOnInit(): void {\r\n this.sub.sink = this._auth.currentUser.subscribe(res => {\r\n this.currentUser = res;\r\n this.initForm();\r\n });\r\n }\r\n initForm() {\r\n if (this.currentUser) {\r\n this.feedbackForm.setValue({\r\n 'fullName': this.currentUser.fullName,\r\n 'phoneNumber': this.currentUser.phoneNumber,\r\n 'email': this.currentUser.userName,\r\n 'title': '',\r\n 'message': ''\r\n })\r\n }\r\n else this.feedbackForm.reset();\r\n\r\n }\r\n onSave() {\r\n\r\n if (this.currentUser) {\r\n console.log(this.feedbackForm.controls['title'].value);\r\n console.log(this.feedbackForm.controls['message'].value);\r\n if ((this.feedbackForm.controls['title'].value.length == 0) || (this.feedbackForm.controls['message'].value.length == 0))\r\n {\r\n alert(\"Mời nhập tiêu đề và nội dung\");\r\n return;\r\n }\r\n }\r\n else {\r\n this.submited = true;\r\n if (this.feedbackForm.invalid) return;\r\n }\r\n\r\n let model: FeedBackModel = {\r\n fullName: this.f[\"fullName\"].value,\r\n phoneNumber: this.f[\"phoneNumber\"].value,\r\n email: this.f[\"email\"].value,\r\n title: this.f[\"title\"].value,\r\n message: this.f[\"message\"].value\r\n }\r\n this.sub.sink = this._service.SendFeedBack(model).subscribe(res => {\r\n alert('Gửi phản hồi/góp ý thành công');\r\n this.submited = false;\r\n this.initForm();\r\n },\r\n err => {\r\n alert('Gửi phản hồi không thành công. Hãy kiểm tra các trường thông tin đã nhập đầy đủ chưa?');\r\n }\r\n )\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
{{'COMMON.requiredfield' | translate}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\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 { AuthService } from '../services/auth/auth.service';\r\n\r\nexport function appInitializer(authenticationService: AuthService) {\r\n return () => new Promise(resolve => {\r\n // attempt to refresh token on app start up to auto authenticate\r\n authenticationService.preAuthenticate()\r\n .subscribe()\r\n .add(resolve);\r\n });\r\n}","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AccountService {\r\n private userSubject: BehaviorSubject = new BehaviorSubject(null);\r\n currentUserStat: Observable;\r\n url = environment.url;\r\n constructor(private _http: HttpClient) {\r\n this.currentUserStat = this.userSubject.asObservable();\r\n }\r\n GetMyInfo() {\r\n return this._http.get(`${this.url}/api/account`)\r\n .pipe(map((response: CurrentUserDetail) => response));\r\n }\r\n UpdateInfo(phoneNumber:string) {\r\n return this._http.put(`${this.url}/api/account`, {phoneNumber:phoneNumber})\r\n .pipe(map((response: any) => response));\r\n }\r\n UpdateAvatar(file: File) {\r\n const formData = new FormData();\r\n formData.append('avatar', file, file.name);\r\n return this._http.post(`${this.url}/api/account/updateavatar`, formData, { headers: new HttpHeaders().append('Custom-Content-Type', 'true') })\r\n .pipe(map((response: any) => response));\r\n }\r\n UpdatePassword(password:String,newPassword:String) {\r\n \r\n return this._http.post(`${this.url}/api/authenticate/updatepassword`,{\r\n CurrentPassword:password,\r\n NewPassword:newPassword,\r\n ConfirmNewPassword:newPassword\r\n })\r\n .pipe(map((response: any) => response));\r\n }\r\n GetMyStats(id:number) {\r\n if (this.userSubject.value) return this.userSubject;\r\n return this._http.get(`${this.url}/api/account/infobox/${id}`)\r\n .pipe(\r\n map((res: any) => {\r\n if (res && res.status == 1) {\r\n this.userSubject.next(res.data);\r\n return res.data;\r\n }\r\n else return null;\r\n })\r\n );\r\n }\r\n}\r\nexport interface CurrentUserDetail {\r\n id: number;\r\n userType: number;\r\n userName: string;\r\n password: string;\r\n fullName: string;\r\n phoneNumber: string;\r\n position: string;\r\n departmentId: number;\r\n department:string;\r\n createdOnDate:Date\r\n}\r\n\r\nexport interface UserChangeInfoCommand {\r\n phoneNumber: string;\r\n fullName: string;\r\n position: string;\r\n departmentId: number;\r\n}\r\nexport interface UserBoxInfo {\r\n id: number;\r\n fullName: string;\r\n position: string;\r\n addedOnDate: Date | string;\r\n totalNewsWritten: number;\r\n totalInteractions: number;\r\n totalViews: number;\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, switchMap, tap } from 'rxjs/operators';\r\nimport { AuthService } from '../services/auth/auth.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\n//import { InformationDialogComponent } from '../components/shared/information-dialog/information-dialog.component';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n constructor(private authenticationService: AuthService, public dialog: MatDialog) { }\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(request).pipe(catchError(err => {\r\n if ([401].includes(err.status) && this.authenticationService.GetUser()) {\r\n // auto logout if 401 or 403 response returned from api\r\n return this.handle401Error(request, next);\r\n // this.authenticationService.logout();\r\n }\r\n else if (err.status == 500) {\r\n //alert(\"something went wrong!\");\r\n \r\n // if (!this.dialog.getDialogById('error_network')) {\r\n // this.dialog.open(InformationDialogComponent, {\r\n // id: 'error_network',\r\n // data: {\r\n // message: err.error + \". \" + err.message,\r\n // title: 'Đã xảy ra lỗi'\r\n // }\r\n // });\r\n // }\r\n }\r\n const error = (err && err.error && err.error.message) || err.statusText;\r\n console.error(err);\r\n return throwError(error);\r\n }))\r\n }\r\n\r\n private isRefreshing = false;\r\n\r\n private handle401Error(request: HttpRequest, next: HttpHandler) {\r\n if (!this.isRefreshing) {\r\n this.isRefreshing = true;\r\n return this.authenticationService.refreshToken().pipe(\r\n switchMap((token: any) => {\r\n if (token) this.isRefreshing = false;\r\n this.authenticationService.storeTokens(token);\r\n return next.handle(this.addToken(request, this.authenticationService.getJwtToken()));\r\n }));\r\n\r\n } else {\r\n this.authenticationService.logout();\r\n }\r\n }\r\n private addToken(request: HttpRequest, token: string) {\r\n return request.clone({\r\n setHeaders: {\r\n 'Authorization': `Bearer ${token}`\r\n }\r\n });\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { environment } from 'src/environments/environment';\nimport { catchError, map, tap } from 'rxjs/operators';\nimport { Observable, of } from 'rxjs';\n\n\nexport abstract class BaseHttpService {\n protected url: string;\n protected module: string = \"\";\n constructor(protected http: HttpClient, module: string) {\n this.module = module;\n this.url = environment.url + '/api';\n }\n\n protected sendGetDetail(url: string, id: number): Observable> {\n return this.http.get(`${this.url}/${url}/${id}`)\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n public sendPagingRequest(url: string, params: T): Observable> {\n let url_queries: string = `${this.url}/${url}?`;\n for (let key in params) {\n if (params[key] != null)\n url_queries += `${key}=${params[key]}&`;\n }\n url_queries = url_queries.substr(0, url_queries.length - 1);\n return this.http.get(url_queries)\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n protected sendGet(url: string): Observable> {\n return this.http.get(`${this.url}/${url}`)\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n protected sendPost(url: string, model: any): Observable> {\n return this.http.post(`${this.url}/${url}`, model)\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n protected sendPostFormData(url: string, model: FormData): Observable> {\n return this.http.post(`${this.url}/${url}`, model, { headers: new HttpHeaders().append('Custom-Content-Type', 'true') })\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n protected sendPutFormData(url: string, model: FormData): Observable> {\n return this.http.put(`${this.url}/${url}`, model, { headers: new HttpHeaders().append('Custom-Content-Type', 'true') })\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n protected sendPut(url: string, model: any): Observable> {\n return this.http.put(`${this.url}/${url}`, model)\n .pipe(\n // catchError((error) => {\n // console.log(error);\n // return of({\n // status: -1,\n // message: error.toString()\n // });\n // }),\n map((res: Response) => res)\n );\n }\n public sendDelete(url: string, id: number) {\n return this.http.delete(`${this.url}/${url}/${id}`)\n .pipe(\n catchError((error) => {\n console.log(error);\n return of({\n status: -1,\n message: error.toString()\n });\n }),\n map((res: Response) => res)\n );\n }\n\n //\n create(createModel: { [key: string]: any }) {\n return this.sendPost(`${this.module}`, createModel);\n }\n update(id: number, updateModel: { [key: string]: any }) {\n return this.sendPut(`${this.module}/${id}`, updateModel);\n }\n delete(id: number) {\n return this.sendDelete(this.module, id);\n }\n\n\n}\n\nexport abstract class PagnitionRequest {\n constructor(page: number = 1, pageSize = 12) {\n this.page = page;\n this.pageSize = pageSize;\n this.isSortDesc = false;\n }\n page: number;\n pageSize: number;\n isSortDesc: boolean;\n sortField?: string;\n}\n\n\nexport class Response {\n data?: T\n status?: number;\n message?: string;\n totalCount?: number;\n dataCount?: number;\n}\n\n","import { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { environment } from '../../environments/environment';\r\nimport { AuthService } from '../services/auth/auth.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from '../services/language.service';\r\n\r\n@Injectable()\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n constructor(private authenticationService: AuthService, private langService:LanguageService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n \r\n if (request.url.search(\"mmedia-5005a\") != -1) {\r\n return next.handle(request);\r\n }\r\n if (!this.isSpecialRequest(request)) {\r\n if (!request.headers.has('Content-Type') && !request.headers.has('Custom-Content-Type')) {\r\n if (!this.isSpecialContentType(request)) {\r\n request = request.clone({ headers: request.headers.set('Content-Type', 'application/json') });\r\n }\r\n }\r\n }\r\n // console.log(this.langService.currentLang);\r\n request = request.clone({\r\n headers: request.headers.set('lang', this.langService.currentLang)\r\n });\r\n // add auth header with jwt if user is logged in and request is to the api url\r\n\r\n const isApiUrl = request.url.startsWith(environment.url);\r\n if (this.authenticationService.getJwtToken() && isApiUrl) {\r\n request = request.clone({\r\n setHeaders:\r\n {\r\n Authorization: `Bearer ${this.authenticationService.getJwtToken()}`\r\n },\r\n withCredentials: true\r\n });\r\n }\r\n return next.handle(request);\r\n }\r\n\r\n private isSpecialRequest(req: any) {\r\n if (req.url.search(\"/api/authenticate/login\") != -1) return true;\r\n \r\n return false;\r\n }\r\n private isSpecialContentType(req: any) {\r\n if (req.url.search(\"/upload\") != -1) return true;\r\n if (req.url.search(\"/import\") != -1) return true;\r\n return false;\r\n }\r\n}","import { PreloadingStrategy, Route } from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\n@Injectable()\r\nexport class AppPreloadingStrategy implements PreloadingStrategy {\r\n preload(route: Route, load: () => Observable): Observable {\r\n if (route.data && route.data['preload']) {\r\n return load();\r\n } else {\r\n return of(null);\r\n }\r\n }\r\n}","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import { Component, OnInit, isDevMode } from '@angular/core'\r\n\r\n@Component({\r\n selector: 'app-switch-language',\r\n templateUrl: './switch-language.component.html',\r\n styleUrls: ['./switch-language.component.scss']\r\n})\r\nexport class SwitchLanguageComponent implements OnInit {\r\n isDev = isDevMode()\r\n siteLanguage: string\r\n siteLocale: string\r\n languageList = [\r\n { code: 'en', label: 'English' },\r\n { code: 'vi', label: 'Vietnamese' }\r\n ]\r\n\r\n ngOnInit() {\r\n this.siteLocale = window.location.pathname.split('/')[1]\r\n this.siteLanguage = this.languageList.find(\r\n (f) => f.code === this.siteLocale\r\n )?.label\r\n if (!this.siteLanguage) {\r\n this.onChange(this.languageList[0].code)\r\n }\r\n }\r\n\r\n onChange(selectedLangCode: string) {\r\n window.location.href = `/${selectedLangCode}`\r\n }\r\n\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { ViewportScroller } from '@angular/common';\r\nimport { SEOService } from './services/seo/seoservice.service';\r\nimport { AuthService } from './services/auth/auth.service';\r\nimport * as Chart from 'chart.js';\r\nimport { centerTitlePlugin } from './core/ultis/chart.plugin';\r\nimport { LanguageService } from './services/language.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SubSink } from 'subsink';\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit,OnDestroy {\r\n private sub:SubSink=new SubSink();\r\n disabled:boolean=false;\r\n constructor(\r\n private router: Router, private viewPortScroller: ViewportScroller,\r\n private _seo: SEOService,\r\n private authenticationService: AuthService,\r\n private langService:LanguageService,\r\n private translateService:TranslateService\r\n ) {\r\n \r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n ngOnInit(): void {\r\n if(sessionStorage.getItem(\"ACTIVATE_STATE\")){\r\n if(sessionStorage.getItem(\"ACTIVATE_STATE\")==\"true\"){\r\n this.disabled=false;\r\n }\r\n else{\r\n this.disabled=true;\r\n }\r\n }\r\n else this.loadValidationState();\r\n this.authenticationService.preAuthenticate().subscribe().add(()=>{console.log('Ok')});\r\n this._seo.updateTitle();\r\n this.routerScroll();\r\n Chart.pluginService.register({\r\n beforeDraw: centerTitlePlugin\r\n });\r\n this.translateService.use(this.langService.currentLang);\r\n }\r\n loadValidationState(){\r\n this.sub.sink=this.authenticationService.loadValidationState().subscribe((val:any)=>{\r\n sessionStorage.setItem(\"ACTIVATE_STATE\",val.active);\r\n if(!val.active){\r\n this.disabled=true;\r\n }\r\n else{\r\n this.disabled=false;\r\n }\r\n });\r\n }\r\n routerScroll() {\r\n const noScrollRoutes: string[] = [\r\n '/ho-so/',\r\n ];\r\n this.router.events.subscribe((evt) => {\r\n if (evt instanceof NavigationEnd) {\r\n //console.log(this.isInCluded(noScrollRoutes,this.router.url));\r\n\r\n if (!this.isInCluded(noScrollRoutes,this.router.url)) {\r\n this.viewPortScroller.scrollToPosition([0, 0]);\r\n }\r\n }\r\n });\r\n }\r\n isInCluded(routes:string[],url:string){\r\n let result:boolean=false;\r\n routes.forEach(element => {\r\n if(url.startsWith(element)){\r\n result=true;\r\n }\r\n });\r\n return result;\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n

WEBSITE IS NOT AVAILABLE AT THIS TIME

\r\n
","import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport * as moment from 'moment';\r\n@Pipe({\r\n name: 'secondsToTime'\r\n})\r\nexport class secondsToTimePipe {\r\n\r\n transform(seconds: number) {\r\n var sec_num = seconds; // don't forget the second param\r\n var hours = Math.floor(sec_num / 3600);\r\n var minutes = Math.floor((sec_num - (hours * 3600)) / 60);\r\n var seconds = sec_num - (hours * 3600) - (minutes * 60);\r\n var h, m, s;\r\n h = hours.toString();\r\n m = minutes.toString();\r\n s = seconds.toString();\r\n if (hours < 10) { h = \"0\" + hours; }\r\n\r\n if (minutes < 10) { m = \"0\" + minutes; }\r\n if (seconds < 10) { s = \"0\" + seconds; }\r\n\r\n\r\n return h + ':' + m + ':' + s;\r\n }\r\n}\r\n@Pipe({\r\n name: 'dateToTime'\r\n})\r\nexport class dateToTimePipe {\r\n transform(str: string) {\r\n var date = new Date(Date.parse(str));\r\n var minutes = date.getMinutes();\r\n let minuteStr = '';\r\n if (minutes > 0) minuteStr = String(minutes) +' phút ';\r\n var hours = String(date.getHours());\r\n \r\n let month = String(date.getMonth()+1);\r\n let day = String(date.getUTCDate());\r\n const year = String(date.getFullYear());\r\n let dayofweek = date.getDay();\r\n if (dayofweek == 0) dayofweek = 7;\r\n else dayofweek += 1;\r\n return `${hours} giờ ${minuteStr}- thứ ${dayofweek} ngày ${day}/${month}/${year}`;\r\n }\r\n}\r\n@Pipe({ name: 'groupBy' })\r\nexport class GroupByPipe implements PipeTransform {\r\n transform(collection: Array, property: string): Array {\r\n // prevents the application from breaking if the array of objects doesn't exist yet\r\n if (!collection) {\r\n return null;\r\n }\r\n\r\n const groupedCollection = collection.reduce((previous, current) => {\r\n if (!previous[current[property]]) {\r\n previous[current[property]] = [current];\r\n } else {\r\n previous[current[property]].push(current);\r\n }\r\n\r\n return previous;\r\n }, {});\r\n\r\n // this will return an array of objects, each object containing a group of objects\r\n return Object.keys(groupedCollection).map(key => ({ key, value: groupedCollection[key] }));\r\n }\r\n}\r\n@Pipe({\r\n name: 'secondsToMinutes'\r\n})\r\nexport class secondsToMinutesPipe {\r\n\r\n transform(seconds: number) {\r\n return Math.floor(seconds / 60) + \":\" + (seconds % 60 ? seconds % 60 : '00')\r\n }\r\n}\r\n@Pipe({\r\n name: 'timeAgo'\r\n})\r\nexport class timeAgoPipe implements PipeTransform{\r\n constructor(){\r\n moment.locale('vi');\r\n }\r\n transform(date: Date) {\r\n return moment(date).fromNow();\r\n }\r\n}","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { AuthService, SessionUserModel } from 'src/app/services/auth/auth.service';\nimport { NewFeedbackModel, NewsService } from 'src/app/services/news/news.service';\nimport { SubSink } from 'subsink';\n\n@Component({\n selector: 'app-article-feedback-list',\n templateUrl: './article-feedback-list.component.html',\n styleUrls: ['./article-feedback-list.component.scss']\n})\nexport class ArticleFeedbackListComponent implements OnInit,OnDestroy {\n @Input('feedbacks') feedbacks:NewFeedbackModel[];\n private sub:SubSink=new SubSink();\n currentUser:SessionUserModel;\n constructor(private _service:NewsService,private _auth:AuthService) { }\n ngOnDestroy(): void {\n this.sub.unsubscribe();\n }\n\n ngOnInit(): void {\n this.currentUser=this._auth.GetUser();\n }\n\n delete(item: NewFeedbackModel){\n if(confirm(\"Bạn chắc chắn muốn xóa góp ý này chứ?\")){\n this.sub.sink=this._service.DeleteFeedback(item.id).subscribe(res=>{\n if(res.status==1){\n this.feedbacks=this.feedbacks.filter(c=>c!=item);\n }\n else {\n alert('Xóa không thành công');\n }\n });\n }\n }\n}\n","
\n
\n
\n \n
\n - {{item.createdOnDate | date:'dd/MM/yyyy'}}\n \n
\n
\n
\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule, LOCALE_ID, APP_INITIALIZER, Injector } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { MainLayoutComponent } from './components/shared/main-layout/main-layout.component';\r\nimport { NavComponent } from './components/shared/nav/nav.component';\r\nimport { FooterComponent } from './components/shared/footer/footer.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { NgxLoadingModule, ngxLoadingAnimationTypes } from 'ngx-loading';\r\nimport { ContactComponent } from './components/contact/contact.component';\r\nimport { SharedModule } from './shared.module';\r\nimport { LoginDialogComponent } from './components/shared/dialogs/login-dialog/login-dialog.component';\r\n// import localeVi from '@angular/common/locales/vi';\r\nimport { APP_BASE_HREF, CommonModule, PlatformLocation, registerLocaleData } from '@angular/common';\r\nimport { HTTP_INTERCEPTORS, HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { appInitializer } from './helper/app.initializer';\r\nimport { JwtInterceptor } from './helper/jwt.interceptor';\r\nimport { ErrorInterceptor } from './helper/error.interceptor';\r\nimport { AuthService } from './services/auth/auth.service';\r\nimport { AppPreloadingStrategy } from './app_preloading_strategy';\r\nimport { SwitchLanguageComponent } from './components/shared/switch-language/switch-language.component';\r\nimport { HomeOperationFieldsComponent } from './components/home/home-operation-fields/home-operation-fields.component';\r\nimport { LazyLoadImageModule, LAZYLOAD_IMAGE_HOOKS, ScrollHooks } from 'ng-lazyload-image';\r\nimport { WrapParnerSlideLayoutComponent } from './components/shared/wrap-parner-slide-layout/wrap-parner-slide-layout.component';\r\nimport { AppInjector } from './core/components/base_component';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport {TranslateHttpLoader} from '@ngx-translate/http-loader';\r\n\r\n// registerLocaleData(localeVi);\r\nexport function HttpLoaderFactory(httpClient: HttpClient) {\r\n return new TranslateHttpLoader(httpClient);\r\n}\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n MainLayoutComponent,\r\n NavComponent,\r\n FooterComponent,\r\n HomeComponent,\r\n ContactComponent,\r\n LoginDialogComponent,\r\n SwitchLanguageComponent,\r\n HomeOperationFieldsComponent,\r\n WrapParnerSlideLayoutComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n BrowserAnimationsModule,\r\n SharedModule,\r\n LazyLoadImageModule,\r\n NgxLoadingModule.forRoot({\r\n animationType: ngxLoadingAnimationTypes.wanderingCubes,\r\n backdropBackgroundColour: 'rgba(0,0,0,0.1)',\r\n backdropBorderRadius: '4px',\r\n primaryColour: '#ffffff',\r\n secondaryColour: '#ffffff',\r\n tertiaryColour: '#ffffff'\r\n }),\r\n TranslateModule.forRoot({\r\n defaultLanguage:'vi',\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n providers: [\r\n AppPreloadingStrategy,\r\n //{ provide: LAZYLOAD_IMAGE_HOOKS, useClass: ScrollHooks },\r\n { provide: APP_INITIALIZER, useFactory: appInitializer, multi: true, deps: [AuthService] },\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { \r\n constructor(injector: Injector) {\r\n AppInjector.setInjector(injector);// save a injector ref 💾\r\n }\r\n}\r\n","import { environment } from '../environments/environment';\r\nexport const AvatarRootUrl: string = environment.url + '/upload/images/avatar';\r\nexport const DataImageUrl: string = environment.url + \"/upload/images\";\r\nexport const DataDocumentUrl: string = environment.url + \"/upload/documents\";\r\nexport enum UploadUrls {\r\n NEW,\r\n PROJECT,\r\n OPERATION_FIELD,\r\n ABOUT,\r\n PUBLIC_NEW,\r\n ACHIEVEMENT,\r\n PARTNER\r\n}\r\nexport function getImageUploadUrl(type: UploadUrls) {\r\n\r\n switch (type) {\r\n case UploadUrls.NEW: {\r\n return DataImageUrl + \"/new\";\r\n }\r\n case UploadUrls.PUBLIC_NEW: {\r\n return DataImageUrl + \"/public_new\";\r\n }\r\n case UploadUrls.PROJECT: {\r\n return DataImageUrl + \"/project\";\r\n }\r\n case UploadUrls.OPERATION_FIELD: {\r\n return DataImageUrl + \"/operation_field\";\r\n }\r\n case UploadUrls.ABOUT:{\r\n return DataImageUrl+\"/about\";\r\n }\r\n case UploadUrls.ACHIEVEMENT: return DataImageUrl + \"/about/achievement\";\r\n case UploadUrls.PARTNER: return DataImageUrl + \"/partner\";\r\n default: {\r\n return DataImageUrl;\r\n }\r\n }\r\n}\r\nvar new_category_types: any[] = [\r\n { label: 'Tin tức chuyên môn', value: 1 },\r\n {\r\n label: 'Tin tức nội bộ', value: 0\r\n }\r\n]\r\nexport {new_category_types}","import { Injectable } from '@angular/core';\r\nimport { AES, SHA256, enc, mode, pad } from 'crypto-js';\r\n@Injectable({ providedIn: 'root' })\r\nexport class EncryptService {\r\n\r\n constructor() { }\r\n secretKey = enc.Utf8.parse(\"E6t187^D43%FiqGnhOyV1IfYrxrQyLil\"); \r\n iv = enc.Utf8.parse('7061737323313233');\r\n encrypt(value: string): string {\r\n return AES.encrypt(enc.Utf8.parse(value), SHA256(this.secretKey),\r\n {\r\n keySize: 256 / 8,\r\n iv: this.iv,\r\n mode: mode.CBC,\r\n padding: pad.Pkcs7\r\n }).toString();\r\n // return AES.encrypt(value, this.secretKey.trim()).toString();\r\n }\r\n decrypt(textToDecrypt: string) {\r\n return AES.decrypt(textToDecrypt, SHA256(this.secretKey), {\r\n keySize: 256 / 8,\r\n iv: this.iv,\r\n mode: mode.CBC,\r\n padding: pad.Pkcs7\r\n }).toString(enc.Utf8);\r\n }\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-confirm-dialog',\r\n templateUrl: './confirm-dialog.component.html',\r\n styleUrls: ['./confirm-dialog.component.scss']\r\n})\r\nexport class ConfirmDialogComponent implements OnInit {\r\n\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any,\r\n public dialogRef: MatDialogRef\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n onNoClick(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
","import { Component, Inject, LOCALE_ID, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { LoginDialogComponent } from '../dialogs/login-dialog/login-dialog.component';\r\nimport { AuthService, SessionUserModel } from 'src/app/services/auth/auth.service';\r\nimport { SubSink } from 'subsink';\r\nimport { AvatarRootUrl } from 'src/app/app.config';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\r\nimport { FormControl } from '@angular/forms';\r\nimport { NotificationEntityType, NotificationResponse, NotificationService } from 'src/app/services/notification/notification.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/services/language.service';\r\n\r\n@Component({\r\n selector: 'app-nav',\r\n templateUrl: './nav.component.html',\r\n styleUrls: ['./nav.component.scss']\r\n})\r\nexport class NavComponent implements OnInit, OnDestroy {\r\n private sub: SubSink = new SubSink();\r\n singed_in_user: SessionUserModel;\r\n rootAvatar: string = AvatarRootUrl;\r\n currentUrl: string;\r\n selectedSearchType = new FormControl();\r\n textSearch = new FormControl();\r\n searchTypeList = [\r\n {\r\n value: 1,\r\n label: \"APP.project\"\r\n },\r\n {\r\n value: 2,\r\n label: \"NEWS.general\"\r\n },\r\n {\r\n value: 3,\r\n label: \"NEWS.specialist\"\r\n }\r\n ]\r\n //lang: string = \"\";\r\n notifications: NotificationResponse[] = [];\r\n isNotificationClick: boolean = false;\r\n currentLang:string=\"vi\";\r\n constructor(private dialog: MatDialog, private _auth: AuthService,\r\n private router: Router,\r\n private notificationService: NotificationService, public translate: TranslateService,\r\n public langService: LanguageService\r\n ) {\r\n this.selectedSearchType.setValue(1);\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n //this.lang = this.localeId == \"en\" ? \"/en\" : \"\";\r\n // if (this._auth.isLoggedIn)\r\n // this.loadNotifcation();\r\n this.sub.sink = this._auth.currentUser.subscribe(res => {\r\n this.singed_in_user = res;\r\n //this.changListSearch();\r\n\r\n });\r\n this.sub.sink = this.router.events.pipe(filter(event => event instanceof NavigationEnd)).subscribe((res: NavigationEnd) => {\r\n this.currentUrl = res.url;\r\n });\r\n this.sub.sink = this.notificationService.getTotalUnseen().subscribe(res => {\r\n if (res.status == 1) {\r\n this.totalUnseenNotifications = res.data;\r\n }\r\n });\r\n \r\n this.currentLang=this.langService.currentLang;\r\n }\r\n // changListSearch() {\r\n // if (this.singed_in_user) {\r\n // if (this.searchTypeList.length == 3)\r\n // // this.searchTypeList.push({\r\n // // value: 4,\r\n // // label: \"Tin tức nội bộ\"\r\n // // });\r\n // }\r\n // else {\r\n // this.searchTypeList = this.searchTypeList.filter(c => c.value < 4);\r\n // }\r\n // }\r\n openLoginForm(): void {\r\n const dialogRef = this.dialog.open(LoginDialogComponent, {\r\n panelClass: ['no_padding']\r\n });\r\n dialogRef.afterClosed().subscribe(res => {\r\n this.notifications = [];\r\n this.loadNotifcation();\r\n })\r\n }\r\n logOut() {\r\n this.notifications = [];\r\n this._auth.logout();\r\n }\r\n changeLanguage() {\r\n this.langService.switchLang();\r\n setTimeout(() => {\r\n this.translate.use(this.langService.currentLang);\r\n location.reload();\r\n }, 100);\r\n\r\n // const browserLang = this.translate.getBrowserLang();\r\n // this.translate.use(browserLang.match(/vi|en/) ? browserLang : 'vi');\r\n\r\n // this.langService\r\n // let _lang = this.localeId == \"en\" ? \"\" : \"/en\";\r\n // let url = window.location.origin + _lang + window.location.pathname.replace('/en/', '/');\r\n // window.location.href = url;\r\n }\r\n alert() {\r\n alert('Chưa hoạt động');\r\n }\r\n isHoso() {\r\n if (!this.currentUrl) return false;\r\n return this.currentUrl.includes('/ho-so/');\r\n }\r\n isTintuc() {\r\n if (!this.currentUrl) return false;\r\n return this.currentUrl.includes('/tin-tuc');\r\n }\r\n onSearch() {\r\n // console.log(this.selectedSearchType.value);\r\n switch (parseInt(this.selectedSearchType.value)) {\r\n case 1: {\r\n \r\n this.router.navigate(['/du-an/grid'],{queryParams:{title:this.textSearch.value }})\r\n // location.href = '/du-an/grid?title=' + this.textSearch.value;\r\n break;\r\n }\r\n case 2: {\r\n this.router.navigate(['/tin-tuc'],{queryParams:{title:this.textSearch.value }})\r\n // this.router.navigate(['/du-an'])\r\n break;\r\n }\r\n case 3: {\r\n this.router.navigate(['/tin-tuc/chuyen-mon'],{queryParams:{title:this.textSearch.value }})\r\n //location.href = this.lang + '/tin-tuc/chuyen-mon?title=' + this.textSearch.value;\r\n break;\r\n }\r\n case 4: {\r\n // location.href = this.lang + '/tin-tuc/noi-bo?title=' + this.textSearch.value;\r\n break;\r\n }\r\n }\r\n }\r\n page: number = 1;\r\n pageNumber: number = 10;\r\n totalNotifications = 0;\r\n isShowLoadMoreNoti: boolean = false;\r\n totalUnseenNotifications = 0;\r\n loadNotifcation() {\r\n this.notificationService.getAll(this.page, this.pageNumber).subscribe(res => {\r\n if (res.status == 1) {\r\n this.totalNotifications = res.dataCount;\r\n this.notifications = [...this.notifications, ...res.data];\r\n if (res.data.length == 0) return;\r\n if (this.notifications.length < this.totalNotifications) {\r\n this.page += 1;\r\n this.isShowLoadMoreNoti = true;\r\n }\r\n else {\r\n this.isShowLoadMoreNoti = false;\r\n }\r\n // for (let index = 0; index < 50; index++) {\r\n // this.notifications.push(this.notifications[0]);\r\n // }\r\n }\r\n })\r\n }\r\n onNotiClick(item: NotificationResponse) {\r\n console.log(item);\r\n if (!this.isNotificationClick) {\r\n this.isNotificationClick = true;\r\n }\r\n if (!item.status) this.sub.sink = this.notificationService.seen(item.id).subscribe();\r\n switch (item.entityType) {\r\n case NotificationEntityType.LikeNew:\r\n case NotificationEntityType.CommentNew:\r\n case NotificationEntityType.ConfirmNew:\r\n let _url = '/tin-tuc/' + (item.isPrivateNew ? 'noi-bo' : 'chuyen-mon') + '/chi-tiet';\r\n this.router.navigate([_url, item.entityId]);\r\n break;\r\n case NotificationEntityType.CreateNew:\r\n if (this.singed_in_user.userType > 1)\r\n this.router.navigate(['/quan-tri/quan-ly-bai-viet/phe-duyet-bai-viet', item.entityId]);\r\n else alert('Vai trò thành viên không thể đọc thông báo này');\r\n break;\r\n case NotificationEntityType.EditNew:\r\n if (this.singed_in_user.userType > 1)\r\n this.router.navigate(['/quan-tri/quan-ly-bai-viet/phe-duyet-bai-viet', item.entityId]);\r\n else alert('Vai trò thành viên không thể đọc thông báo này');\r\n break;\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{'COMMON.searchby' |translate}}\r\n \r\n
\r\n
\r\n\r\n
\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 class=\"badge badge-danger\">{{totalUnseenNotifications}}\r\n \r\n
\r\n
Thông báo của bạn
\r\n
\r\n \r\n
\r\n \"Ảnh\r\n
\r\n
\r\n
\r\n {{item.actor}}  \r\n - {{item.dateCreated | timeAgo}}\r\n
\r\n
\r\n {{item.actionType}} [{{item.entityName}}] tại chuyên mục\r\n [{{item.isPrivateNew?\"TIN NỘI BỘ\":\"TIN CHUYÊN MÔN\"}}]\r\n
\r\n
\r\n \r\n Tải thêm\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \"vietnamese\"\r\n \"english\"\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
","import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\nimport { map } from 'rxjs/operators';\nimport { environment } from 'src/environments/environment';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CommentService {\n\n url = environment.url;\n constructor(private _http: HttpClient, @Inject(LOCALE_ID) protected localeId: string) {\n\n }\n GetAllComment(query:GetAllCommentQuery) {\n return this._http.get(`${this.url}/api/comment?targetId=${query.targetId}&targetType=${query.targetType}&page=${query.page}&pageSize=${query.pageSize}`)\n .pipe(map((response: any) => {\n if(response){\n return response;\n }\n else return null;\n }));\n }\n AddComment(model:CreateCommentCommand){\n return this._http.post(`${this.url}/api/comment`,model)\n .pipe(map((response: any) => {\n if(response){\n return response;\n }\n else return null;\n }));\n }\n DeleteComment(id:number){\n return this._http.delete(`${this.url}/api/comment/${id}`)\n .pipe(map((response: any) => {\n if(response){\n return response;\n }\n else return null;\n }));\n }\n}\n\nexport interface GetAllCommentQuery {\n targetId: number;\n targetType: CommentTargetTypeEnum;\n page: number;\n pageSize: number;\n}\n\nexport interface CommentListItem {\n id: number;\n fullName: string;\n email: string;\n commentContent: string;\n userId: number | null;\n addedOnDate: string;\n lastUpdatedOnDate: string;\n}\nexport enum CommentTargetTypeEnum {\n New = 1,\n PublicNew = 2\n}\nexport interface CreateCommentCommand {\n fullName: string;\n email: string;\n commentContent: string;\n targetType: CommentTargetTypeEnum;\n targetId: number;\n}\n\n\nexport interface Comment {\n id: number;\n fullName: string;\n email: string;\n commentContent: string;\n targetType: CommentTargetTypeEnum;\n targetId: number;\n userId: number;\n addedOnDate: string;\n lastUpdatedOnDate: string;\n}","import { NgModule } from '@angular/core';\r\nimport { UserBoxComponent } from './components/shared/user-box/user-box.component';\r\nimport { UserCommentBoxComponent } from './components/shared/user-comment-box/user-comment-box.component';\r\nimport { ShareSocialBoxComponent } from './components/shared/share-social-box/share-social-box.component';\r\nimport { BreadcrumbComponent } from './components/shared/breadcrumb/breadcrumb.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SlickCarouselModule } from 'ngx-slick-carousel';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n//\r\nimport { ListProjectsGridComponent } from './components/shared/list-projects-grid/list-projects-grid.component';\r\nimport { MaterialModule } from './material.module';\r\nimport { FeedbackFormComponent } from './components/shared/feedback-form/feedback-form.component';\r\nimport { FullscreenPopupComponent } from './components/shared/dialogs/fullscreen-popup/fullscreen-popup.component';\r\nimport { PartnersSlideshowComponent } from './components/shared/partners-slideshow/partners-slideshow.component';\r\nimport { ConfirmDialogComponent } from './components/shared/dialogs/confirm-dialog/confirm-dialog.component';\r\nimport { InfoDialogComponent } from './components/shared/dialogs/info-dialog/info-dialog.component';\r\nimport { LazyLoadImageModule } from 'ng-lazyload-image';\r\nimport { CustomSnackbarComponent } from './components/shared/custom-snackbar/custom-snackbar.component';\r\nimport { NgxLoadingModule } from 'ngx-loading';\r\nimport { InfiniteScrollModule } from 'ngx-infinite-scroll';\r\n///\r\nimport { SafeHtmlPipe, SafeUrlPipe, CheckScriptsPipe, SafeResourceUrlPipe, OembedPipe } from './core/pipes/safeHtml.pipe';\r\nimport { ArticleFeedbackListComponent } from './components/shared/article-feedback-list/article-feedback-list.component';\r\nimport { dateToTimePipe, GroupByPipe, secondsToMinutesPipe, secondsToTimePipe, timeAgoPipe } from './core/pipes/time.pipe';\r\nimport { NgxMasonryModule } from 'ngx-masonry';\r\nimport { ChartsModule } from 'ng2-charts';\r\nimport { memberPointTypePipe, newStatusPipe, StatisticNewStatPipe, userActivityTypePipe, userStatusPipe, userTypePipe } from './core/pipes/news.pipe';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n@NgModule({\r\n declarations: [\r\n SafeHtmlPipe, SafeUrlPipe, CheckScriptsPipe, SafeResourceUrlPipe, OembedPipe,\r\n userTypePipe,userStatusPipe,newStatusPipe,memberPointTypePipe,userActivityTypePipe,\r\n StatisticNewStatPipe,\r\n BreadcrumbComponent,\r\n UserBoxComponent,\r\n UserCommentBoxComponent,\r\n ShareSocialBoxComponent,\r\n ListProjectsGridComponent,\r\n FeedbackFormComponent,\r\n FullscreenPopupComponent,\r\n PartnersSlideshowComponent,\r\n ConfirmDialogComponent,\r\n InfoDialogComponent,\r\n CustomSnackbarComponent,\r\n ArticleFeedbackListComponent,\r\n timeAgoPipe,\r\n secondsToTimePipe,\r\n dateToTimePipe, GroupByPipe,\r\n secondsToMinutesPipe,\r\n newStatusPipe,\r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n ReactiveFormsModule, FormsModule,\r\n MaterialModule,\r\n LazyLoadImageModule,\r\n InfiniteScrollModule,\r\n NgxMasonryModule,\r\n SlickCarouselModule,\r\n TranslateModule\r\n // TranslateModule.forChild({\r\n // loader: {provide: TranslateLoader, useClass: CustomLoader},\r\n // compiler: {provide: TranslateCompiler, useClass: CustomCompiler},\r\n // parser: {provide: TranslateParser, useClass: CustomParser},\r\n // missingTranslationHandler: {provide: MissingTranslationHandler, useClass: CustomHandler},\r\n // isolate: true\r\n // })\r\n ],\r\n exports: [\r\n SafeHtmlPipe, SafeUrlPipe, CheckScriptsPipe, SafeResourceUrlPipe, OembedPipe,newStatusPipe,\r\n userTypePipe,userStatusPipe,memberPointTypePipe,userActivityTypePipe,\r\n StatisticNewStatPipe,\r\n SlickCarouselModule,\r\n UserBoxComponent,\r\n UserCommentBoxComponent,\r\n ShareSocialBoxComponent,\r\n BreadcrumbComponent,\r\n ListProjectsGridComponent,\r\n MaterialModule,\r\n FeedbackFormComponent,\r\n FullscreenPopupComponent,\r\n PartnersSlideshowComponent,\r\n LazyLoadImageModule,\r\n NgxLoadingModule,\r\n ArticleFeedbackListComponent,\r\n timeAgoPipe,\r\n secondsToTimePipe,\r\n dateToTimePipe, GroupByPipe,\r\n secondsToMinutesPipe,\r\n InfiniteScrollModule,\r\n ReactiveFormsModule, FormsModule,\r\n ChartsModule,\r\n TranslateModule\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { MemberPointType, StatisticNewStatEnum, UserActivityType } from \"src/app/services/statistic/statistic.service\";\r\nimport { UserTypes } from \"src/app/services/user/user.service\";\r\n@Pipe({\r\n name: 'newStatus'\r\n})\r\nexport class newStatusPipe {\r\n transform(status: number) {\r\n switch (status) {\r\n case 0: return \"Đợi phê duyệt\";\r\n case 1: return \"Đã phê duyệt\";\r\n case 2: return \"Góp ý điều chỉnh\";\r\n default: return \"\";\r\n }\r\n }\r\n}\r\n@Pipe({\r\n name: 'userStatus'\r\n})\r\nexport class userStatusPipe {\r\n transform(status: number) {\r\n switch (status) {\r\n case 0: return \"Đã bị khóa\";\r\n case 1: return \"Đang hoạt động\";\r\n case 2: return \"Đã xóa\";\r\n default: return \"\";\r\n }\r\n }\r\n}\r\n@Pipe({\r\n name: 'userType'\r\n})\r\nexport class userTypePipe {\r\n transform(type: number) {\r\n let types = UserTypes;\r\n return types.filter(x => x.value == type)[0].label;\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: 'memberPointType'\r\n})\r\nexport class memberPointTypePipe {\r\n transform(type: MemberPointType) {\r\n if (type == MemberPointType.Actor) return \"Điểm tác giả\";\r\n else return \"Điểm tương tác\";\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: 'userActivity'\r\n})\r\nexport class userActivityTypePipe {\r\n transform(type: UserActivityType, shorten: boolean = false) {\r\n if (shorten) {\r\n if (type == UserActivityType.Like) return \"lượt thích\";\r\n if (type == UserActivityType.Comment) return \"bình luận\";\r\n if (type == UserActivityType.WritePost) return \"bài viết\";\r\n }\r\n else {\r\n if (type == UserActivityType.Like) return \"lượt thích\";\r\n if (type == UserActivityType.Comment) return \"lượt bình luận\";\r\n if (type == UserActivityType.WritePost) return \"lượng bài viết\";\r\n }\r\n\r\n return \"\";\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: 'statisticNewStat'\r\n})\r\nexport class StatisticNewStatPipe {\r\n transform(type: StatisticNewStatEnum) {\r\n if (type == StatisticNewStatEnum.Views) return \"lượt xem\";\r\n if (type == StatisticNewStatEnum.Comments) return \"bình luận\";\r\n if (type == StatisticNewStatEnum.News) return \"bài viết\";\r\n else return \"\";\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-custom-snackbar',\r\n templateUrl: './custom-snackbar.component.html',\r\n styleUrls: ['./custom-snackbar.component.scss']\r\n})\r\nexport class CustomSnackbarComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { BehaviorSubject, Observable } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LanguageService {\r\n private _currentLang: BehaviorSubject;\r\n currentLangObs: Observable;\r\n constructor() {\r\n let initLang = localStorage.getItem('lang') ?? 'vi';\r\n this._currentLang = new BehaviorSubject(initLang);\r\n this._currentLang.asObservable();\r\n }\r\n updateLang(lang: 'vi' | 'en') {\r\n this._currentLang.next(lang);\r\n }\r\n get currentLang() {\r\n return this._currentLang.value;\r\n }\r\n switchLang() {\r\n if (this.currentLang == 'vi') this.updateLang('en');\r\n else this.updateLang('vi');\r\n localStorage.setItem('lang', this.currentLang);\r\n }\r\n\r\n get isVietnamese(){\r\n return this.currentLang=='vi';\r\n }\r\n\r\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { BaseHttpService } from '../basehttp.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StatisticService extends BaseHttpService {\n\n constructor(httpClient: HttpClient) {\n super(httpClient, 'statistic');\n }\n getMonthStatistic() {\n //StatisticNewStatItem\n return this.sendGet(this.module);\n }\n getUserStats(type: MemberPointType) {\n //UserStatItemModel\n return this.sendGet(`${this.module}/user?Type=${type}`);\n }\n getUserChart() {\n //UserChartItemModel\n return this.sendGet(`${this.module}/chart?page=1&pageSize=10`);\n }\n getMonthlyNewStats() {\n //NewStatChartItemModel\n return this.sendGet(`${this.module}/new`);\n }\n getUserChartTotal(){\n //UserChartModel\n console.log('what?');\n return this.sendGet(`${this.module}/chart/total`);\n }\n}\nexport enum MemberPointType {\n Author,\n Actor\n}\nexport interface StatisticNewStatItem {\n type: StatisticNewStatEnum;\n current: number;\n total: number;\n}\nexport enum StatisticNewStatEnum {\n News='news',\n Views ='views',\n Comments=\"comments\"\n}\nexport interface UserStatItemModel {\n type: UserActivityType;\n total: number;\n actualPoints: number;\n pointEach: number;\n maximumPoints: number;\n}\nexport enum UserActivityType {\n WritePost = \"writePost\",\n Comment = \"comment\",\n Like = \"like\"\n}\nexport interface UserChartItemModel {\n userId: number;\n fullName: string;\n authorPoints: number;\n actorPoints: number;\n totalPoints: number;\n}\nexport interface NewStatChartItemModel {\n timeTypeId: number;\n totalViews: number;\n totalComments: number;\n totalNews: number;\n year: number;\n}\n\nexport interface UserChartModel {\n year: number;\n authorPoints: number;\n actorPoints: number;\n}","export enum Roles{\r\n Member=1,\r\n Checker=2,\r\n Editor=3,\r\n Admin=4\r\n}","import { HttpClient } from '@angular/common/http';\nimport { LOCALE_ID } from '@angular/core';\nimport { Inject, Injectable } from '@angular/core';\nimport { map } from 'rxjs/operators';\nimport { environment } from 'src/environments/environment';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NotificationService {\n\n url = environment.url;\n constructor(private _http: HttpClient, @Inject(LOCALE_ID) protected localeId: string) {\n\n }\n getAll(page:number=1,pageSize:number=10) {\n return this._http.get(`${this.url}/api/notification?page=${page}&pageSize=${pageSize}`)\n .pipe(map((response: any) => response));\n }\n seen(id:number) {\n return this._http.put(`${this.url}/api/notification/${id}`,null)\n .pipe(map((response: any) => response));\n }\n getTotalUnseen() {\n return this._http.get(`${this.url}/api/notification/totalunseen`)\n .pipe(map((response: any) => response));\n }\n}\n\nexport interface NotificationResponse {\n id: number;\n entityType: NotificationEntityType;\n entityId: number;\n actor: string;\n actorId: number;\n actionType: string;\n entityName: string;\n dateCreated: Date;\n status: boolean;\n isPrivateNew:boolean;\n}\n\nexport enum NotificationEntityType {\n CreateNew = \"createNew\",\n EditNew = \"editNew\",\n LikeNew = \"likeNew\",\n CommentNew = \"commentNew\",\n ConfirmNew = \"confirmNew\",\n AlertNew = \"alertNew\",\n DeleteNew = \"deleteNew\"\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { IBaseEntity } from 'src/app/core/components/base_component';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseHttpService, PagnitionRequest } from '../basehttp.service';\r\nimport { ItemList } from '../category/category.service';\r\nimport * as _moment from 'moment';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NewsService extends BaseHttpService {\r\n constructor(_http: HttpClient) {\r\n super(_http, \"news\");\r\n }\r\n getUserNews(filter: GetAllUserNewsQuery) {\r\n return this.sendPagingRequest(`${this.module}/user`, filter);\r\n }\r\n\r\n getAllPrivateNews(filter: GetAllNewDisplayFilter) {\r\n if (filter.dateEnd) {\r\n filter.dateEnd = _moment(filter.dateEnd).format('YYYY-MM-DD');\r\n }\r\n if (filter.dateFrom) {\r\n filter.dateFrom = _moment(filter.dateFrom).format('YYYY-MM-DD');\r\n }\r\n //return this.sendPagingRequest(`${this.module}`,filter);\r\n return this.sendPagingRequest(`${this.module}/display`, filter);\r\n }\r\n getAllNews(filter: GetAllNewsFilter) {\r\n return this.sendPagingRequest(`${this.module}`, filter);\r\n }\r\n\r\n getRelatedNews(Id: number) {\r\n return this.sendGet(`${this.module}/display/${Id}/relates`);\r\n }\r\n GetById(Id: number) {\r\n return this.sendGet(`${this.module}/${Id}`);\r\n }\r\n GetDetail(Id: number, update: boolean = true) {\r\n return this.sendGet(`${this.module}/detail/${Id}?update=${update}`);\r\n }\r\n Create(CreateModel: CreateNewCommand, thumbnail: File) {\r\n const formData: FormData = new FormData();\r\n formData.append('thumbnail', thumbnail, thumbnail.name);\r\n formData.append('data', JSON.stringify(CreateModel));\r\n return this.sendPostFormData(this.module, formData)\r\n .pipe(map((response: any) => response));\r\n }\r\n Update(Id: number, UpdateModel: UpdateNewDetailCommand, thumbnail: File) {\r\n const formData: FormData = new FormData();\r\n formData.append('data', JSON.stringify(UpdateModel));\r\n if (thumbnail)\r\n formData.append('thumbnail', thumbnail, thumbnail.name);\r\n return this.sendPutFormData(`${this.module}/${Id}`, formData);\r\n }\r\n ChangeStatus(Id: number, Status: number) {\r\n return this.sendPost(`${this.module}/changestatus/${Id}?Status=${Status}`, null)\r\n .pipe(map((response: any) => response));\r\n }\r\n Delete(Id: number) {\r\n return this.sendDelete(`${this.module}`, Id);\r\n }\r\n Like(Id: number,Value:boolean=true) {\r\n return this.sendPost(`${this.module}/${Id}/like?Value=${Value}`, null);\r\n }\r\n IsLike(Id: number) {\r\n return this.sendGet(`${this.module}/${Id}/like`);\r\n }\r\n CreateFeedBack(model: NewFeedbackCreateModel) {\r\n return this.sendPost(`newfeedback`, model);\r\n }\r\n DeleteFeedback(Id: number) {\r\n return this.sendDelete(`newfeedback`, Id);\r\n }\r\n getAllFeedback(NewId: number) {\r\n return this.sendGet(`newfeedback?id=${NewId}&page=1&&pageSize=100`)\r\n .pipe(map((response: any) => response));\r\n }\r\n}\r\n\r\nexport interface NewFeedbackCreateModel {\r\n newId: number;\r\n htmlContent: string;\r\n}\r\n\r\nexport interface NewFeedbackModel {\r\n id: number;\r\n htmlContent: string;\r\n createdByUserId: number;\r\n createdOnDate: string;\r\n lastModifiedOnDate: string;\r\n}\r\n\r\nexport interface UserNewListItem extends IBaseEntity {\r\n title: string;\r\n titleEn: string;\r\n publishedOnDate: Date;\r\n categoryId: number;\r\n category: string;\r\n categoryEn: string;\r\n status: number;\r\n}\r\nexport class GetAllUserNewsQuery extends PagnitionRequest {\r\n constructor(userId: number) {\r\n super();\r\n this.userId = userId;\r\n }\r\n userId: number;\r\n categoryId?: number;\r\n status?: number;\r\n title?: string;\r\n}\r\nvar NewStatus: ItemList[] = [\r\n {\r\n value: 0,\r\n label: \"Đợi phê duyệt\"\r\n },\r\n {\r\n value: 1,\r\n label: \"Đã phê duyệt\"\r\n },\r\n {\r\n value: 2,\r\n label: \"Góp ý điều chỉnh\"\r\n }\r\n];\r\nexport { NewStatus };\r\n\r\n///////\r\nexport interface CreateNewCommand {\r\n title: string;\r\n htmlContent: string;\r\n categoryId: number;\r\n thumbnail?: any;\r\n}\r\nexport interface UpdateNewDetailCommand {\r\n\r\n id: number;\r\n title: string;\r\n htmlContent: string;\r\n categoryId: number;\r\n thumbnail?: any;\r\n}\r\n///\r\nexport interface NewListItem {\r\n id: number;\r\n title: string;\r\n categoryId: number;\r\n category: string;\r\n authorId: number;\r\n author: string;\r\n status: number;\r\n summary: string;\r\n publishedOnDate: Date | string;\r\n}\r\nexport class GetAllNewsFilter extends PagnitionRequest {\r\n constructor() {\r\n super();\r\n\r\n }\r\n categoryId?: number;\r\n title?: string;\r\n status?: number;\r\n}\r\nexport interface NewItem {\r\n id: number;\r\n title: string;\r\n thumbnail: string;\r\n summary: string;\r\n htmlContent: string;\r\n categoryId: number;\r\n categoryType: number;\r\n status: number;\r\n createdByUserId: number;\r\n createdOnDate: Date | string;\r\n lastModifiedOnDate: Date | string;\r\n lastModifiedByUserId: number;\r\n author: string;\r\n}\r\n//\r\n\r\nexport interface NewDetailItem {\r\n id: number;\r\n title: string;\r\n summary: string;\r\n thumbnail: string;\r\n htmlContent: string;\r\n categoryId: number;\r\n category: string;\r\n totalViews: number;\r\n totalComments: number;\r\n publishedOnDate: Date | string;\r\n status: number;\r\n authorId: number;\r\n author: string;\r\n}\r\n\r\n\r\n///\r\nexport class GetAllNewDisplayFilter extends PagnitionRequest {\r\n constructor(cateType: number, page: number = 1, pageSize: number = 12) {\r\n super(page, pageSize);\r\n this.cateType = cateType;\r\n }\r\n cateType: number;\r\n categoryId?: number;\r\n dateFrom?: any;\r\n dateEnd?: any;\r\n title?: string;\r\n}\r\nexport interface NewDisplayListItem {\r\n id: number;\r\n title: string;\r\n categoryId: number;\r\n category: string;\r\n authorId: number;\r\n author: string;\r\n thumbnail: string;\r\n totalComments: number;\r\n totalViews: number;\r\n publishedOnDate: Date | string;\r\n}\r\n\r\n\r\n\r\nexport interface RelatedNewListItem {\r\n id: number;\r\n title: string;\r\n thumbnail: string;\r\n totalComments: number;\r\n totalViews: number;\r\n publishedOnDate: string;\r\n}","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { HomeService, PartnerItemModel } from 'src/app/services/home/home.service';\r\nimport { SubSink } from 'subsink';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-partners-slideshow',\r\n templateUrl: './partners-slideshow.component.html',\r\n styleUrls: ['./partners-slideshow.component.scss']\r\n})\r\nexport class PartnersSlideshowComponent implements OnInit,OnDestroy {\r\n private sub:SubSink=new SubSink();\r\n loaded: boolean;\r\n partners: PartnerItemModel[];\r\n root_image = getImageUploadUrl(UploadUrls.PARTNER) + \"/\";\r\n constructor(private _service: HomeService) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n ngOnInit(): void {\r\n this.loaded = false;\r\n this.sub.sink=this._service.GetPartners().subscribe(res => {\r\n if (res) {\r\n this.partners = res;\r\n }\r\n else this.partners = [];\r\n }).add(() => this.loaded = true);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n\r\n \r\n \"{{slide.name}}\"\r\n \"{{slide.name}}\"\r\n \r\n
\r\n
\r\n
","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-fullscreen-popup',\r\n templateUrl: './fullscreen-popup.component.html',\r\n styleUrls: ['./fullscreen-popup.component.scss']\r\n})\r\nexport class FullscreenPopupComponent implements OnInit {\r\n\r\n constructor( public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: FullScreenPopupData) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n close(){\r\n this.dialogRef.close();\r\n }\r\n}\r\nexport interface FullScreenPopupData{\r\n image?:string,\r\n link?:string,\r\n title?:string\r\n}","","import { Component, Input, OnInit } from '@angular/core';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { ProjectListItem } from 'src/app/services/project/project.service';\r\n@Component({\r\n selector: 'app-list-projects-grid',\r\n templateUrl: './list-projects-grid.component.html',\r\n styleUrls: ['./list-projects-grid.component.scss']\r\n})\r\nexport class ListProjectsGridComponent implements OnInit {\r\n @Input('projects') projects: ProjectListItem[];\r\n @Input('total') total: number;\r\n image_data_root: string = getImageUploadUrl(UploadUrls.PROJECT);\r\n constructor() { }\r\n\r\n\r\n\r\n ngOnInit(): void {\r\n\r\n\r\n }\r\n getClass(type: number) {\r\n switch (type) {\r\n case 1: return 'block1x1';\r\n case 2: return 'block1x2';\r\n case 3: return 'block2x1';\r\n }\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
{{'COMMON.noresult' | translate}}
\r\n [{{'COMMON.backtolist' | translate}}]\r\n
","import { Injectable } from '@angular/core';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { filter, map, mergeMap } from 'rxjs/operators';\r\nimport { LanguageService } from '../language.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SEOService {\r\n\r\n constructor(\r\n private titleService: Title,\r\n private meta: Meta,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n public language: LanguageService,\r\n ) { }\r\n\r\n updateMetaInfo(description, type, image, url) {\r\n \r\n this.meta.updateTag({ name: 'description', content: description });\r\n \r\n this.meta.updateTag({ content: description,property:'og:description'} , 'property=\"og:description\"' );\r\n if (type) this.meta.updateTag({ property: 'og:type', content: type },'property=\"og:type\"');\r\n else this.meta.updateTag({ property: 'og:type', content: 'website' },'property=\"og:type\"');\r\n if (image) this.meta.updateTag({ property: 'og:image', content: image },'property=\"og:image\"');\r\n if (url) this.meta.updateTag({ property: 'og:url', content: url },'property=\"og:url\"');\r\n }\r\n\r\n updateTitle(title?: string) {\r\n \r\n console.log(this.language.currentLang);\r\n let companyName= this.language.currentLang=='vi'?'Công ty Cổ phần Tư vấn và Dịch vụ Viettel':'Viettel Consultancy And Services Joint Stock Company';\r\n \r\n if (!title) {\r\n this.router.events\r\n .pipe(\r\n filter((event) => event instanceof NavigationEnd),\r\n map(() => this.activatedRoute),\r\n map((route) => {\r\n while (route.firstChild) { route = route.firstChild; }\r\n return route;\r\n }),\r\n filter((route) => route.outlet === 'primary'),\r\n mergeMap((route) => route.data)).subscribe((event) => {\r\n let _tmpTitle=\"\";\r\n if(event['title']){\r\n _tmpTitle += ' - '+event['title'];\r\n }\r\n this.titleService.setTitle(companyName + _tmpTitle);\r\n this.meta.updateTag({ name: 'og:title', content: _tmpTitle });\r\n if (event['description']){\r\n this.meta.updateTag({ name: 'description', content: event['description'] });\r\n this.meta.updateTag({ name: 'og:description', content: event['description'] });\r\n }\r\n \r\n });\r\n } else {\r\n this.titleService.setTitle(`${companyName} - ${title}`);\r\n this.meta.updateTag({ name: 'og:title', content: `${companyName} - ${title}`});\r\n }\r\n }\r\n}\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { AccountService,UserBoxInfo } from 'src/app/services/account/account.service';\r\nimport { AuthService, SessionUserModel } from 'src/app/services/auth/auth.service';\r\nimport { SubSink } from 'subsink';\r\nimport { AvatarRootUrl } from 'src/app/app.config';\r\nexport interface StatLineData {\r\n label: string,\r\n value: string,\r\n icon?: string\r\n}\r\n@Component({\r\n selector: 'app-user-box',\r\n templateUrl: './user-box.component.html',\r\n styleUrls: ['./user-box.component.scss']\r\n})\r\nexport class UserBoxComponent implements OnInit, OnDestroy {\r\n @Input('userId') userId: number;\r\n user: SessionUserModel;\r\n stat: UserBoxInfo;\r\n private sub: SubSink = new SubSink();\r\n rootAvatar: string = AvatarRootUrl;\r\n constructor(private _auth: AuthService, private _accountService: AccountService) {\r\n\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!this.userId) {\r\n this.sub.sink = this._auth.currentUser.subscribe(res => {\r\n this.user = res;\r\n if (this.user) {\r\n this.sub.sink = this._accountService.GetMyStats(this.user.id).subscribe(data => {\r\n this.stat = data;\r\n })\r\n }\r\n })\r\n }\r\n else {\r\n this.sub.sink = this._accountService.GetMyStats(this.userId).subscribe(data => {\r\n this.stat = data;\r\n })\r\n }\r\n\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{stat.fullName}}\r\n
\r\n
\r\n {{stat.position}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Ngày tham gia:\r\n
\r\n
\r\n {{stat.addedOnDate | date:'dd/MM/yyyy'}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n Số lương bài viết:\r\n
\r\n
\r\n {{stat.totalNewsWritten}} Bài\r\n
\r\n
\r\n
\r\n
\r\n \r\n Số lương người xem:\r\n
\r\n
\r\n {{stat.totalViews}} Lượt\r\n
\r\n
\r\n
\r\n
\r\n \r\n Số lương tương tác:\r\n
\r\n
\r\n {{stat.totalInteractions}} Bình luận\r\n
\r\n
\r\n\r\n
\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OperationfieldService {\r\n\r\n url = environment.url;\r\n constructor(private _http: HttpClient) { }\r\n GetAll() {\r\n return this._http.get(`${this.url}/api/operationfield`)\r\n .pipe(map((response: any) => response))\r\n }\r\n GetById(Id:number) {\r\n return this._http.get(`${this.url}/api/operationfield/${Id}`)\r\n .pipe(map((response: any) => response));\r\n }\r\n}\r\nexport interface OperationFieldListItem {\r\n id: number;\r\n name: string;\r\n thumbnail: string;\r\n banner:string;\r\n description:string;\r\n}\r\nexport interface OperationFieldItem\r\n{\r\n id: number;\r\n name: string;\r\n thumbnail: string;\r\n htmlContent: string;\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HomeService {\r\n\r\n url = environment.url;\r\n constructor(private _http: HttpClient, @Inject(LOCALE_ID) protected localeId: string) {\r\n\r\n }\r\n GetAll() {\r\n return this._http.get(`${this.url}/api/settings/home`)\r\n .pipe(map((response: HomeSettingsResponse) => response));\r\n }\r\n GetPartners() {\r\n return this._http.get(`${this.url}/api/settings/partner`)\r\n .pipe(map((response: any) => response));\r\n }\r\n}\r\nexport interface HomeSettingsResponse\r\n{\r\n banners: HomeBannerProject[];\r\n projects: HomeListItemProject[];\r\n homeAboutArticle:string;\r\n}\r\nexport interface HomeBannerProject\r\n{\r\n id: number;\r\n title: string;\r\n location: string;\r\n summary: string;\r\n banner: string;\r\n}\r\nexport interface HomeListItemProject\r\n{\r\n id: number;\r\n title: string;\r\n category: string;\r\n thumbnail: string;\r\n thumbnailRatio:number;\r\n}\r\nexport interface PartnerItemModel {\r\n id: number;\r\n logo: string;\r\n logoActive: string;\r\n name: string;\r\n link:string;\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContactService {\r\n\r\n url = environment.url;\r\n constructor(private _http: HttpClient, @Inject(LOCALE_ID) protected localeId: string) {\r\n\r\n }\r\n GetDepartments() {\r\n return this._http.get(`${this.url}/api/settings/department`)\r\n .pipe(map((response: DepartmentModel[]) => {\r\n if (response) {\r\n return response;\r\n }\r\n else return null;\r\n }));\r\n }\r\n SendFeedBack(feedback: FeedBackModel) {\r\n return this._http.post(`${this.url}/api/feedback`, feedback);\r\n }\r\n}\r\nexport interface DepartmentModel {\r\n id: number;\r\n name: string;\r\n address: string;\r\n phoneNumber: string;\r\n email: string;\r\n map: string;\r\n}\r\nexport interface FeedBackModel {\r\n fullName: string;\r\n phoneNumber: string;\r\n email: string;\r\n title: string;\r\n message: string;\r\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { ContactComponent } from './components/contact/contact.component';\r\nimport { AppPreloadingStrategy } from './app_preloading_strategy';\r\nimport { AuthGuardService as AuthGuard } from './services/auth/auth-guard.service';\r\nimport { Roles } from './core/models/Roles';\r\nimport { WrapParnerSlideLayoutComponent } from './components/shared/wrap-parner-slide-layout/wrap-parner-slide-layout.component';\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: WrapParnerSlideLayoutComponent,\r\n children: [\r\n {\r\n path: '',\r\n pathMatch: 'full',\r\n component: HomeComponent,\r\n data: {\r\n preload: true\r\n }\r\n },\r\n {\r\n path: 'lien-he',\r\n pathMatch: 'full',\r\n component: ContactComponent,\r\n data: {\r\n preload: true\r\n }\r\n },\r\n {\r\n path: 'tin-tuc',\r\n loadChildren: () => import('./pages/news/news.module').then(m => m.NewsModule),\r\n data: {\r\n preload: true,\r\n title: 'Tin tức chung'\r\n }\r\n },\r\n {\r\n path: 'du-an',\r\n loadChildren: () => import('./pages/projects/projects.module').then(m => m.ProjectsModule),\r\n data: {\r\n preload: true\r\n }\r\n },\r\n { path: 'others', loadChildren: () => import('./pages/others/others.module').then(m => m.OthersModule) },\r\n { path: 'ho-so', loadChildren: () => import('./pages/company/company.module').then(m => m.CompanyModule) },\r\n ]\r\n },\r\n {\r\n path: 'tai-khoan',\r\n canActivate: [AuthGuard],\r\n\r\n loadChildren: () => import('./pages/account/account.module').then(m => m.AccountModule),\r\n },\r\n {\r\n path: 'quan-tri',\r\n canActivate: [AuthGuard],\r\n data: { roles: [Roles.Admin, Roles.Editor, Roles.Checker] },\r\n loadChildren: () => import('./pages/admin/admin.module').then(m => m.AdminModule)\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, {\r\n preloadingStrategy: AppPreloadingStrategy,\r\n scrollPositionRestoration: 'enabled'\r\n })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","//material components\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatMomentDateModule, MomentDateAdapter, MAT_MOMENT_DATE_ADAPTER_OPTIONS, MAT_MOMENT_DATE_FORMATS } from '@angular/material-moment-adapter';\r\nimport { MAT_DATE_LOCALE, DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { NgModule } from '@angular/core';\r\nimport {MatCheckboxModule} from '@angular/material/checkbox';\r\nimport {MatTabsModule} from '@angular/material/tabs';\r\nimport {MatDialogModule} from '@angular/material/dialog';\r\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\r\nimport {ClipboardModule} from '@angular/cdk/clipboard';\r\nimport {MatRadioModule} from '@angular/material/radio';\r\n//\r\n@NgModule({\r\n declarations: [\r\n \r\n ],\r\n imports: [\r\n \r\n ],\r\n exports: [\r\n MatDatepickerModule,\r\n MatMomentDateModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatCheckboxModule,\r\n MatSnackBarModule,\r\n MatTabsModule,\r\n MatDialogModule,\r\n ClipboardModule,\r\n MatRadioModule\r\n ],\r\n providers: [\r\n {\r\n provide: DateAdapter,\r\n useClass: MomentDateAdapter,\r\n deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]\r\n },\r\n { provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS },\r\n ],\r\n})\r\nexport class MaterialModule {\r\n \r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { OperationFieldListItem } from 'src/app/services/operationfield/operationfield.service';\r\n\r\n@Component({\r\n selector: 'app-home-operation-fields',\r\n templateUrl: './home-operation-fields.component.html',\r\n styleUrls: ['./home-operation-fields.component.scss']\r\n})\r\nexport class HomeOperationFieldsComponent implements OnInit {\r\n @Input('items') fields: OperationFieldListItem[];\r\n image_data_root: string = getImageUploadUrl(UploadUrls.OPERATION_FIELD);\r\n constructor() { }\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
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n 01\r\n /\r\n 2\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{item.name}}
\r\n

\r\n \r\n

\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
","var centerTitlePlugin = function (chart: any) {\r\n if (chart.config.options.elements.center) {\r\n // Get ctx from string\r\n var ctx = chart.chart.ctx;\r\n\r\n // Get options from the center object in options\r\n var centerConfig = chart.config.options.elements.center;\r\n var fontStyle = centerConfig.fontStyle || 'Arial';\r\n var txt = centerConfig.text;\r\n var subText = centerConfig.subText;\r\n var color = centerConfig.color || '#000';\r\n var subTextColor = centerConfig.subTextColor || '#000';\r\n var maxFontSize = centerConfig.maxFontSize || 75;\r\n var sidePadding = centerConfig.sidePadding || 20;\r\n var sidePaddingCalculated = (sidePadding / 100) * (chart.innerRadius * 2)\r\n // Start with a base font of 30px\r\n ctx.font = \"30px \" + fontStyle;\r\n\r\n // Get the width of the string and also the width of the element minus 10 to give it 5px side padding\r\n var stringWidth = ctx.measureText(txt).width;\r\n var elementWidth = (chart.innerRadius * 2) - sidePaddingCalculated;\r\n\r\n // Find out how much the font can grow in width.\r\n var widthRatio = elementWidth / stringWidth;\r\n var newFontSize = Math.floor(30 * widthRatio);\r\n var elementHeight = (chart.innerRadius * 2);\r\n\r\n // Pick a new font size so it will not be larger than the height of label.\r\n var fontSizeToUse = Math.min(newFontSize, elementHeight, maxFontSize);\r\n var minFontSize = centerConfig.minFontSize;\r\n var lineHeight = centerConfig.lineHeight || 25;\r\n var wrapText = false;\r\n\r\n if (minFontSize === undefined) {\r\n minFontSize = 20;\r\n }\r\n\r\n if (minFontSize && fontSizeToUse < minFontSize) {\r\n fontSizeToUse = minFontSize;\r\n wrapText = true;\r\n }\r\n\r\n // Set font settings to draw it correctly.\r\n ctx.textAlign = 'center';\r\n ctx.textBaseline = 'middle';\r\n var centerX = ((chart.chartArea.left + chart.chartArea.right) / 2);\r\n var centerY = ((chart.chartArea.top + chart.chartArea.bottom) / 2);\r\n ctx.font = fontSizeToUse + \"px \" + fontStyle;\r\n ctx.fillStyle = color;\r\n\r\n if (!wrapText) {\r\n ctx.fillText(txt, centerX, centerY - lineHeight);\r\n ctx.fillStyle = subTextColor;\r\n ctx.font = \"50px cabin_bold\";\r\n ctx.fillText(subText, centerX, centerY + lineHeight);\r\n return;\r\n }\r\n\r\n var words = txt.split(' ');\r\n var line = '';\r\n var lines = [];\r\n\r\n // Break words up into multiple lines if necessary\r\n for (var n = 0; n < words.length; n++) {\r\n var testLine = line + words[n] + ' ';\r\n var metrics = ctx.measureText(testLine);\r\n var testWidth = metrics.width;\r\n if (testWidth > elementWidth && n > 0) {\r\n lines.push(line);\r\n line = words[n] + ' ';\r\n } else {\r\n line = testLine;\r\n }\r\n }\r\n\r\n // Move the center up depending on line height and number of lines\r\n centerY -= (lines.length / 2) * lineHeight;\r\n\r\n for (var n = 0; n < lines.length; n++) {\r\n ctx.fillText(lines[n], centerX, centerY);\r\n centerY += lineHeight;\r\n }\r\n //Draw text in center\r\n ctx.fillText(line, centerX, centerY);\r\n }\r\n}\r\nexport { centerTitlePlugin }","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nexport interface InfoDialogData{\r\n title?:string;\r\n message?:string;\r\n type?:string;\r\n}\r\n@Component({\r\n selector: 'app-info-dialog',\r\n templateUrl: './info-dialog.component.html',\r\n styleUrls: ['./info-dialog.component.scss']\r\n})\r\nexport class InfoDialogComponent implements OnInit {\r\n\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: InfoDialogData) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\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\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\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 = \"zn8P\";"],"sourceRoot":"webpack:///"}