{"version":3,"sources":["webpack:///src/app/components/shared/share-social-box/share-social-box.component.ts","webpack:///src/app/components/shared/share-social-box/share-social-box.component.html","webpack:///src/app/components/shared/dialogs/login-dialog/login-dialog.component.ts","webpack:///src/app/components/shared/dialogs/login-dialog/login-dialog.component.html","webpack:///src/app/core/components/base_component.ts","webpack:///src/app/components/shared/main-layout/main-layout.component.ts","webpack:///src/app/components/shared/main-layout/main-layout.component.html","webpack:///crypto (ignored)","webpack:///src/app/components/shared/user-comment-box/user-comment-box.component.ts","webpack:///src/app/components/shared/user-comment-box/user-comment-box.component.html","webpack:///src/app/services/auth/auth.service.ts","webpack:///src/app/core/pipes/safeHtml.pipe.ts","webpack:///src/environments/environment.ts","webpack:///src/app/services/auth/auth-guard.service.ts","webpack:///src/app/components/home/home.component.ts","webpack:///src/app/components/home/home.component.html","webpack:///src/app/services/user/user.service.ts","webpack:///src/app/components/shared/breadcrumb/breadcrumb.component.ts","webpack:///src/app/components/shared/breadcrumb/breadcrumb.component.html","webpack:///src/app/components/shared/wrap-parner-slide-layout/wrap-parner-slide-layout.component.ts","webpack:///src/app/components/shared/wrap-parner-slide-layout/wrap-parner-slide-layout.component.html","webpack:///src/app/components/shared/footer/footer.component.ts","webpack:///src/app/components/shared/footer/footer.component.html","webpack:///src/app/services/subscribed-email/subscribed-email.service.ts","webpack:///src/app/components/contact/contact.component.ts","webpack:///src/app/components/contact/contact.component.html","webpack:///src/app/components/shared/feedback-form/feedback-form.component.ts","webpack:///src/app/components/shared/feedback-form/feedback-form.component.html","webpack:///src/app/helper/app.initializer.ts","webpack:///src/app/services/account/account.service.ts","webpack:///src/app/helper/error.interceptor.ts","webpack:///src/app/services/basehttp.service.ts","webpack:///src/app/helper/jwt.interceptor.ts","webpack:///src/app/app_preloading_strategy.ts","webpack:///node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/components/shared/switch-language/switch-language.component.ts","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/core/pipes/time.pipe.ts","webpack:///src/app/components/shared/article-feedback-list/article-feedback-list.component.ts","webpack:///src/app/components/shared/article-feedback-list/article-feedback-list.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/app.config.ts","webpack:///src/app/helper/encrypt.service.ts","webpack:///src/app/components/shared/dialogs/confirm-dialog/confirm-dialog.component.ts","webpack:///src/app/components/shared/dialogs/confirm-dialog/confirm-dialog.component.html","webpack:///src/app/components/shared/nav/nav.component.ts","webpack:///src/app/components/shared/nav/nav.component.html","webpack:///src/app/services/comment/comment.service.ts","webpack:///src/app/shared.module.ts","webpack:///src/app/core/pipes/news.pipe.ts","webpack:///src/app/components/shared/custom-snackbar/custom-snackbar.component.ts","webpack:///src/app/services/language.service.ts","webpack:///src/app/services/statistic/statistic.service.ts","webpack:///src/app/core/models/Roles.ts","webpack:///src/app/services/notification/notification.service.ts","webpack:///src/app/services/news/news.service.ts","webpack:///src/app/components/shared/partners-slideshow/partners-slideshow.component.ts","webpack:///src/app/components/shared/partners-slideshow/partners-slideshow.component.html","webpack:///src/app/components/shared/dialogs/fullscreen-popup/fullscreen-popup.component.ts","webpack:///src/app/components/shared/dialogs/fullscreen-popup/fullscreen-popup.component.html","webpack:///src/app/components/shared/list-projects-grid/list-projects-grid.component.ts","webpack:///src/app/components/shared/list-projects-grid/list-projects-grid.component.html","webpack:///src/app/services/seo/seoservice.service.ts","webpack:///src/app/components/shared/user-box/user-box.component.ts","webpack:///src/app/components/shared/user-box/user-box.component.html","webpack:///src/app/services/operationfield/operationfield.service.ts","webpack:///src/app/services/home/home.service.ts","webpack:///src/app/services/contact/contact.service.ts","webpack:///src/app/app-routing.module.ts","webpack:///src/app/material.module.ts","webpack:///src/app/components/home/home-operation-fields/home-operation-fields.component.ts","webpack:///src/app/components/home/home-operation-fields/home-operation-fields.component.html","webpack:///src/app/core/ultis/chart.plugin.ts","webpack:///src/app/components/shared/dialogs/info-dialog/info-dialog.component.ts","webpack:///src/app/components/shared/dialogs/info-dialog/info-dialog.component.html","webpack:///src/main.ts","webpack:///$_lazy_route_resource lazy namespace object"],"names":["ShareSocialBoxComponent","selector","templateUrl","styleUrls","LoginDialogComponent","formBuilder","_auth","router","dialogRef","_snackBar","loading","sub","loginForm","group","password","required","username","unsubscribe","lg_submitted","invalid","login","credentials","UserName","controls","value","PassWord","sink","subscribe","res","status","close","alert","message","open","error","console","log","add","onLogin","BasePagingTableComponent","tableArgs","_cdr","service","subs","tableItems","tb_loading","total_records","textSearchControl","injector","AppInjector","getInjector","_baseService","get","constTableArgs","currentUser","currenntUser","detectChanges","response","data","dataCount","url","event","page","first","rows","pageSize","sortField","isSortDesc","sortOrder","filters","key","sendPagingRequest","pipe","onPagingTableDataRecieved","id","entityName","undefined","confirm","filter","x","findIndexById","index","i","length","initalArgument","searchProperty","valueChanges","lenth","MainLayoutComponent","UserCommentBoxComponent","_service","comments","rootAvatar","formSubmit","fullName","minLength","email","query","targetId","targetType","loadComments","isLoading","GetAllComment","totalComments","loadMoreDisplay","submited","createModel","f","commentContent","AddComment","resetForm","push","setTimeout","scrollToBottom","reset","comment","userId","userType","document","getElementById","scrollIntoView","behavior","block","inline","item","isDeleteAllow","DeleteComment","c","onSave","JWT_TOKEN","REFRESH_TOKEN","CODE_CHALLENGE","AuthService","_http","encryptor","userSubject","asObservable","withCredentials","user","timestamp","localStorage","getItem","UpdateUser","post","storeTokens","accessToken","refreshToken","sessionId","next","registerModel","isLoggedIn","getRefreshToken","clearTokens","navigate","GetUser","Date","getTime","toString","setItem","getJwtToken","getCodeChallenge","tokenRes","getAuthenticatedUser","headers","code","encryped_code","encrypt","tokens","removeItem","providedIn","UserTypes","loadJsURL","canJsLoad","scripts","getElementsByTagName","src","insertJsUrl","script","createElement","setAttribute","body","appendChild","SafeHtmlPipe","sanitized","bypassSecurityTrustHtml","name","SafeUrlPipe","bypassSecurityTrustUrl","SafeResourceUrlPipe","bypassSecurityTrustResourceUrl","CheckScriptsPipe","jsUrls","match","OembedPipe","htmlContent","oembed","split","forEach","oembed1","oembed2","youtube","environment","production","AuthGuardService","auth","loader$","loader","_next","state","roles","indexOf","PendingChangesGuard","component","canDeactivate","HomeComponent","_field","image_data_root","PROJECT","$","on","slick","slickPrev","slickNext","autoplay","autoplaySpeed","speed","arrows","dots","fade","cssEase","prevArrow","nextArrow","total_slides","text","asNavFor","currentSlide","nextSlide","slidesToShow","slidesToScroll","appendArrows","GetAll","projects","element","title","thumbnail","category","thumbnailRatio","banners","loadBannerSlider","fields","loadFieldSliders","UserService","module","Id","sendGet","model","sendPost","sendPut","sendDelete","GetAllUserQuery","UserStatuses","label","BreadcrumbComponent","activatedRoute","langService","home","icon","routerLink","locale","currentLang","buildBreadcrumb","events","getPageTitle","page_title","BreadcrumbItems","createBreadcrumbs","root","snapshot","ROUTE_DATA_PAGETITLE","child","firstChild","route","breadcrumbs","children","routeURL","map","segment","path","join","ROUTE_DATA_BREADCRUMB","hide_title","WrapParnerSlideLayoutComponent","FooterComponent","_subscribe","translate","emailControl","GetDepartments","departments","onLangChange","val","valid","SubscribeEmail","onSubmit","encapsulation","None","SubscribedEmailService","localeId","ContactComponent","FeedbackFormComponent","feedbackForm","phoneNumber","initForm","setValue","userName","SendFeedBack","err","appInitializer","authenticationService","Promise","resolve","preAuthenticate","AccountService","currentUserStat","put","file","formData","FormData","append","newPassword","CurrentPassword","NewPassword","ConfirmNewPassword","ErrorInterceptor","dialog","isRefreshing","request","handle","includes","handle401Error","statusText","token","addToken","logout","clone","setHeaders","BaseHttpService","http","params","url_queries","substr","updateModel","PagnitionRequest","Response","JwtInterceptor","search","isSpecialRequest","has","isSpecialContentType","set","isApiUrl","startsWith","Authorization","req","AppPreloadingStrategy","load","webpackContext","webpackContextResolve","__webpack_require__","o","e","Error","keys","webpackContextKeys","Object","exports","SwitchLanguageComponent","isDev","languageList","siteLocale","window","location","pathname","siteLanguage","find","onChange","selectedLangCode","href","AppComponent","viewPortScroller","_seo","translateService","disabled","sessionStorage","loadValidationState","updateTitle","routerScroll","register","beforeDraw","use","active","noScrollRoutes","evt","isInCluded","scrollToPosition","routes","result","secondsToTimePipe","seconds","sec_num","hours","Math","floor","minutes","h","m","s","dateToTimePipe","str","date","parse","getMinutes","minuteStr","String","getHours","month","getMonth","day","getUTCDate","year","getFullYear","dayofweek","getDay","GroupByPipe","collection","property","groupedCollection","reduce","previous","current","secondsToMinutesPipe","timeAgoPipe","fromNow","ArticleFeedbackListComponent","DeleteFeedback","feedbacks","HttpLoaderFactory","httpClient","AppModule","setInjector","provide","useFactory","multi","deps","useClass","forRoot","animationType","wanderingCubes","backdropBackgroundColour","backdropBorderRadius","primaryColour","secondaryColour","tertiaryColour","defaultLanguage","declarations","imports","providers","bootstrap","AvatarRootUrl","DataImageUrl","DataDocumentUrl","UploadUrls","getImageUploadUrl","type","NEW","PUBLIC_NEW","OPERATION_FIELD","ABOUT","ACHIEVEMENT","PARTNER","new_category_types","EncryptService","secretKey","Utf8","iv","keySize","mode","CBC","padding","Pkcs7","textToDecrypt","decrypt","ConfirmDialogComponent","onNoClick","NavComponent","notificationService","selectedSearchType","textSearch","searchTypeList","notifications","isNotificationClick","pageNumber","totalNotifications","isShowLoadMoreNoti","totalUnseenNotifications","singed_in_user","currentUrl","getTotalUnseen","panelClass","afterClosed","loadNotifcation","switchLang","reload","parseInt","queryParams","getAll","seen","entityType","LikeNew","CommentNew","ConfirmNew","_url","isPrivateNew","entityId","CreateNew","EditNew","onSearch","changeLanguage","CommentService","CommentTargetTypeEnum","SharedModule","newStatusPipe","userStatusPipe","userTypePipe","types","memberPointTypePipe","Actor","userActivityTypePipe","shorten","Like","Comment","WritePost","StatisticNewStatPipe","Views","Comments","News","CustomSnackbarComponent","LanguageService","initLang","_currentLang","lang","updateLang","StatisticService","MemberPointType","StatisticNewStatEnum","UserActivityType","Roles","NotificationService","NotificationEntityType","NewsService","dateEnd","format","dateFrom","update","CreateModel","JSON","stringify","sendPostFormData","UpdateModel","sendPutFormData","Status","Value","NewId","GetAllUserNewsQuery","NewStatus","GetAllNewsFilter","GetAllNewDisplayFilter","cateType","PartnersSlideshowComponent","root_image","loaded","GetPartners","partners","FullscreenPopupComponent","ListProjectsGridComponent","total","SEOService","titleService","meta","language","description","image","updateTag","content","companyName","outlet","_tmpTitle","setTitle","UserBoxComponent","_accountService","GetMyStats","stat","OperationfieldService","HomeService","ContactService","feedback","pathMatch","preload","loadChildren","then","NewsModule","ProjectsModule","OthersModule","CompanyModule","canActivate","AccountModule","Admin","Editor","Checker","AdminModule","AppRoutingModule","preloadingStrategy","scrollPositionRestoration","MaterialModule","useValue","HomeOperationFieldsComponent","centerTitlePlugin","chart","config","options","elements","center","ctx","centerConfig","fontStyle","txt","subText","color","subTextColor","maxFontSize","sidePadding","sidePaddingCalculated","innerRadius","font","stringWidth","measureText","width","elementWidth","widthRatio","newFontSize","elementHeight","fontSizeToUse","min","minFontSize","lineHeight","wrapText","textAlign","textBaseline","centerX","chartArea","left","right","centerY","top","bottom","fillStyle","fillText","words","line","lines","n","testLine","metrics","testWidth","InfoDialogComponent","bootstrapModule","webpackEmptyAsyncContext"],"mappings":"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","file":"main-es5.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\";"]}