{"version":3,"sources":["./src/app/pages/news/components/list-news-grid/list-news-grid.component.ts","./src/app/pages/news/components/list-news-grid/list-news-grid.component.html","./src/app/services/category/category.service.ts","./src/app/pages/news/private-news/private-news.component.ts","./src/app/pages/news/private-news/private-news.component.html","./src/app/services/new-category/new-category.service.ts","./src/app/pages/news/professional-news/professional-news.component.ts","./src/app/pages/news/professional-news/professional-news.component.html","./src/app/pages/news/professional-news/professional-new-detail/professional-new-detail.component.ts","./src/app/pages/news/professional-news/professional-new-detail/professional-new-detail.component.html","./src/app/services/public-new/public-new.service.ts","./src/app/pages/news/news-routing.module.ts","./src/app/pages/news/public-news/public-news.component.ts","./src/app/pages/news/public-news/public-news.component.html","./src/app/pages/news/private-news/private-new-detail/private-new-detail.component.ts","./src/app/pages/news/private-news/private-new-detail/private-new-detail.component.html","./src/app/pages/news/public-news/detail/detail.component.ts","./src/app/pages/news/public-news/detail/detail.component.html","./src/app/pages/news/professional-news/list-professional-news/list-professional-news.component.ts","./src/app/pages/news/professional-news/list-professional-news/list-professional-news.component.html","./src/app/pages/news/public-news/list-public-news/list-public-news.component.ts","./src/app/pages/news/public-news/list-public-news/list-public-news.component.html","./src/app/pages/news/components/list-news-row/list-news-row.component.ts","./src/app/pages/news/components/list-news-row/list-news-row.component.html","./src/app/pages/news/private-news/list-private-news/list-private-news.component.ts","./src/app/pages/news/private-news/list-private-news/list-private-news.component.html","./src/app/pages/news/components/new-detail-actions/new-detail-actions.component.ts","./src/app/pages/news/components/new-detail-actions/new-detail-actions.component.html","./src/app/pages/news/news.module.ts","./src/app/pages/news/public-news/detail/related-news/related-news.component.ts","./src/app/pages/news/public-news/detail/related-news/related-news.component.html"],"names":[],"mappings":"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","file":"pages-news-news-module-es2015.js","sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\nimport { NewListItem } from 'src/app/services/news/news.service';\r\n@Component({\r\n selector: 'app-list-news-grid',\r\n templateUrl: './list-news-grid.component.html',\r\n styleUrls: ['./list-news-grid.component.scss']\r\n})\r\nexport class ListNewsGridComponent implements OnInit {\r\n @Input(\"news\") news: NewListItem[];\r\n @Input(\"prefix\") prefixLink: string;\r\n @Input(\"root_image\") image_data_root: string;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n console.log(this.news);\r\n }\r\n\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-lg-3\" *ngFor=\"let item of news; let i=index\">\r\n <a class=\"new_card\" [routerLink]=\"[prefixLink+'chi-tiet',item.id]\" title=\" {{item.title}}\">\r\n\r\n <div class=\"img\">\r\n <img [defaultImage]=\"'/assets/images/notfound.png'\"\r\n [lazyLoad]=\"image_data_root+'/'+item.id+'/'+item.thumbnail+'?width=400'\">\r\n </div>\r\n <div class=\"card_info\">\r\n <div class=\"type\">\r\n <span class=\"t_color_2 \">{{item.category}}</span>\r\n </div>\r\n <div class=\"title t_color_3 t_bold\">\r\n {{item.title}}\r\n </div>\r\n <div class=\"bottom_info\">\r\n <div class=\"author\">\r\n <a href=\"#\" class=\"t_color_3\" *ngIf=\"item.author\">\r\n {{item.author}} -\r\n </a>\r\n\r\n <span class=\"t_color_3\">\r\n {{item.publishedOnDate | date:'dd/MM/yyyy'}}\r\n </span>\r\n </div>\r\n <div class=\"stats\">\r\n <span><img src=\"/assets/images/view.svg\"> <span\r\n class=\"t_color_gray\">{{item.totalViews}}</span></span>\r\n <span><img src=\"/assets/images/comment.svg\"> <span\r\n class=\"t_color_gray\">{{item.totalComments}}</span></span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </a>\r\n \r\n </div>\r\n <div *ngIf=\"news.length==0\" class=\"empty\">\r\n <!-- <img src=\"/assets/images/empty.png\">\r\n <div>{{'COMMON.noresult' |translate}}</div>\r\n <a class=\"t_color_2\" href=\"{{prefixLink}}\">[{{'COMMON.backtolist' |translate}}]</a> -->\r\n </div>\r\n</div>","import { Injectable, LOCALE_ID, Inject } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { LanguageService } from '../language.service';\r\nexport class ItemList {\r\n value: number;\r\n label: string;\r\n}\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CategoryService {\r\n url = environment.url;\r\n constructor(private _http: HttpClient, private lang:LanguageService) { }\r\n GetDepartments() {\r\n return this._http.get(`${this.url}/api/category/department`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n GetLocations() {\r\n return this._http.get(`${this.url}/api/category/location`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n GetNewCategories(isPrivate:boolean=false) {\r\n return this._http.get(`${this.url}/api/category/newcategory?isPrivate=${isPrivate}`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n GetProjectCategories() {\r\n return this._http.get(`${this.url}/api/category/projectcategory`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n GetQuestionCategories() {\r\n return this._http.get(`${this.url}/api/category/questioncategory`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n GetSHNewCategories() {\r\n return this._http.get(`${this.url}/api/category/shareholdernewcategory`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n GetOperationFields() {\r\n return this._http.get(`${this.url}/api/category/operationfield`)\r\n .pipe(map((response: any) => {\r\n if (response) {\r\n return this.matchCategoryList(response);\r\n }\r\n else return null;\r\n }))\r\n }\r\n matchCategoryList(responseList:any[]):ItemList[]{\r\n let listRes: ItemList[] = [];\r\n if (this.lang.currentLang == \"en\") {\r\n for (let index = 0; index < responseList.length; index++) {\r\n const element = responseList[index];\r\n listRes.push({\r\n value: element.id,\r\n label: element.nameEn\r\n });\r\n }\r\n }\r\n else {\r\n for (let index = 0; index < responseList.length; index++) {\r\n const element = responseList[index];\r\n listRes.push({\r\n value: element.id,\r\n label: element.name\r\n });\r\n }\r\n \r\n }\r\n return listRes;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-private-news',\r\n templateUrl: './private-news.component.html',\r\n styleUrls: ['./private-news.component.scss']\r\n})\r\nexport class PrivateNewsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<router-outlet></router-outlet>","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable, LOCALE_ID } 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 } from '../basehttp.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NewCategoryService extends BaseHttpService {\r\n constructor(_http: HttpClient) {\r\n super(_http, 'newcategory');\r\n }\r\n GetAllBase(cateType: number = 0) {\r\n return this.sendGet(`${this.module}/base?CategoryType=${cateType}`);\r\n }\r\n GetAll() {\r\n return this.sendGet(`${this.module}`);\r\n }\r\n GetById(Id: number) {\r\n return this.sendGet(`${this.module}/${Id}`);\r\n }\r\n Create(command: CreateNewCategoryCommand) {\r\n return this.sendPost(`${this.module}`, command);\r\n }\r\n Update(Id: number, command: UpdateNewCategoryCommand) {\r\n return this.sendPut(`${this.module}/${Id}`, command);\r\n }\r\n ChangeOrder(Id: number, newPosition: number) {\r\n return this.sendPut(`${this.url}/${Id}?newPosition=${newPosition}`, null);\r\n }\r\n Delete(Id: number) {\r\n return this.sendDelete(`${this.module}`, Id);\r\n }\r\n}\r\nexport interface NewCategoryListItem extends IBaseEntity {\r\n name: string;\r\n description: string;\r\n index: number;\r\n categoryType: number;\r\n totalArticles: number;\r\n}\r\nexport interface NewCategoryModel {\r\n id: number;\r\n name: string;\r\n nameEn: string;\r\n description?: string;\r\n descriptionEn?: string;\r\n orderIndex: number;\r\n categoryType: number;\r\n}\r\nexport interface CreateNewCategoryCommand {\r\n name: string;\r\n nameEn: string;\r\n description?: string;\r\n descriptionEn?: string;\r\n categoryType: number;\r\n}\r\nexport interface UpdateNewCategoryCommand {\r\n id: number;\r\n name: string;\r\n nameEn: string;\r\n description?: string;\r\n descriptionEn?: string;\r\n}","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-professional-news',\n templateUrl: './professional-news.component.html',\n styleUrls: ['./professional-news.component.scss']\n})\nexport class ProfessionalNewsComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<router-outlet></router-outlet>","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { ActivatedRoute } from '@angular/router';\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\nimport { AuthService } from 'src/app/services/auth/auth.service';\nimport { NewDetailItem, NewsService, RelatedNewListItem } from 'src/app/services/news/news.service';\nimport { SEOService } from 'src/app/services/seo/seoservice.service';\nimport { SubSink } from 'subsink';\ndeclare let FB: any;\n\n@Component({\n selector: 'app-professional-new-detail',\n templateUrl: './professional-new-detail.component.html',\n styleUrls: ['./professional-new-detail.component.scss']\n})\nexport class ProfessionalNewDetailComponent implements OnInit, OnDestroy {\n\n new: NewDetailItem;\n Id: number;\n private sub: SubSink = new SubSink();\n image_data_root: string = getImageUploadUrl(UploadUrls.NEW);\n currentUrl: string = window.location.href;\n selectedIndex = 0;\n isFbParsed: boolean;\n related_news: RelatedNewListItem[];\n currentUser: any;\n constructor(private activatedRoute: ActivatedRoute,\n private _service: NewsService,\n private _seoService: SEOService,\n private snackBar: MatSnackBar,\n private _auth: AuthService\n ) { }\n ngOnDestroy(): void {\n this.sub.unsubscribe();\n }\n\n ngOnInit(): void {\n this.sub.sink = this.activatedRoute.params.subscribe(params => {\n this.Id = +params['Id'];\n this.sub.sink = this._service.GetDetail(this.Id).subscribe(res => {\n if (res) {\n this.new = res.data;\n setTimeout(() => {\n FB.XFBML.parse();\n }, 500);\n this.updateMeta();\n this.getRecentNews();\n }\n },\n error => {\n alert('Tải dữ liệu không thành công');\n location.href = \"/\";\n }\n )\n });\n this.sub.sink = this._auth.currentUser.subscribe(res => {\n this.currentUser = res;\n })\n }\n updateMeta() {\n setTimeout(() => {\n // let des = this.new.htmlContent.substr(0, 250).replace(/<.+?>/g, \"\");\n this._seoService.updateMetaInfo(this.new.summary, \"article\", this.image_data_root + '/' + this.new.id + '/' + this.new.thumbnail, \"\");\n }, 500);\n\n }\n getRecentNews() {\n if (this.new) {\n this.sub.sink = this._service.getRelatedNews(this.new.id).subscribe(res => {\n if (res) {\n this.related_news = res.data;\n }\n })\n }\n\n }\n copyUrl() {\n this.snackBar.open('Đã sao chép liên kết bài viết hiện tại', null, { duration: 2000 });\n }\n OnSelectedIndexChange($event) {\n console.log(this.selectedIndex);\n if (this.isFbParsed) return;\n if (this.selectedIndex == 1) {\n FB.XFBML.parse();\n this.isFbParsed = true;\n }\n }\n\n}\n","<div class=\"body\">\n <div id=\"new_area\" *ngIf=\"new\">\n <div class=\"row brd_btm\">\n <div class=\"col-lg-9 brd_right\">\n <div class=\"padding_left detail_title_area\">\n <div class=\"page_title_area \">\n <div class=\"page_breadcrum\">\n <a [routerLink]=\"'/'\">Trang chủ</a>\n <a [routerLink]=\"'/tin-tuc/noi-bo/the-loai/noi-bo'\" class=\"active\">Tin tức chuyên môn</a>\n\n </div>\n <!-- <app-breadcrumb></app-breadcrumb> -->\n </div>\n <div class=\"title_area\">\n <h2 class=\"title t_color_2 t_bold\">{{new.title}}\n </h2>\n <div class=\"new_info\">\n <div class=\"author\">\n\n <span class=\"t_color_3\">\n {{new.publishedOnDate | date:'dd/MM/yyyy'}}\n </span>\n </div>\n <div>\n <span>\n <img src=\"/assets/images/catalog.svg\">\n\n </span>\n <span class=\"t_color_3\">\n {{new.category}}\n </span>\n </div>\n <div>\n <span>\n <img src=\"/assets/images/view.svg\">\n\n </span>\n <span class=\"t_color_3\">\n {{new.totalViews}} Lượt xem\n </span>\n </div>\n <div>\n <span>\n <img src=\"/assets/images/comment.svg\">\n\n </span>\n <span class=\"t_color_3\">\n {{new.totalComments}} Lượt bình luận\n </span>\n </div>\n\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-lg-3\">\n <!-- <div class=\"scrolldown_sign t_color_3\">Cuộn để xem thêm →</div> -->\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-lg-9 brd_right\">\n <div id=\"left_box\">\n\n <div id=\"new_box\" class=\"padding_left\">\n\n\n <div class=\"ck-content\" [innerHTML]=\"new.htmlContent | safeHtml\">\n\n </div>\n\n </div>\n <app-new-detail-actions [id]=\"Id\"></app-new-detail-actions>\n <div id=\"comment_area\" class=\"padding_left\">\n <mat-tab-group dynamicHeight animationDuration=\"0ms\" [selectedIndex]=\"1\"\n [(selectedIndex)]=\"selectedIndex\" (selectedTabChange)=\"OnSelectedIndexChange($event)\">\n <mat-tab>\n <ng-template mat-tab-label>\n\n BÌNH LUẬN TRỰC TIẾP\n </ng-template>\n <app-user-comment-box [targetId]=\"Id\" [targetType]=\"1\"></app-user-comment-box>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n\n BÌNH LUẬN BẰNG FACEBOOK\n </ng-template>\n <div id=\"new-detail-fb-comment\">\n <div class=\"fb-comments\" data-lazy=\"true\" [attr.data-href]=\"currentUrl\"\n data-numposts=\"8\" data-width=\"100%\"></div>\n </div>\n\n </mat-tab>\n </mat-tab-group>\n <!-- -->\n\n </div>\n </div>\n </div>\n <div class=\"col-lg-3\">\n <div id=\"right_box\">\n <div id=\"author_box\" *ngIf=\"currentUser\">\n <h3 class=\"t_color_2\">\n NGƯỜI VIẾT BÀI\n </h3>\n <app-user-box [userId]=\"new.authorId\"></app-user-box>\n\n </div>\n <app-related-news [items]=\"related_news\" [data_root]=\"image_data_root\" [prefix]=\"'/tin-tuc/chuyen-mon'\"></app-related-news>\n </div>\n\n </div>\n </div>\n\n </div>\n\n</div>","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { IResponse } from 'src/app/core/models/IResponse';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BaseHttpService, PagnitionRequest } from '../basehttp.service';\r\nimport * as _moment from 'moment';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PublicNewService extends BaseHttpService{\r\n constructor(private _http: HttpClient, @Inject(LOCALE_ID) protected localeId: string) {\r\n super(_http,'publicnews');\r\n }\r\n getAllPublicNews(filter: GetAllNewsFilter) {\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._http.get(`${this.url}/api/publicnews?filterString=${JSON.stringify(filter)}`)\r\n // .pipe(map((response: IResponse<PublicNewListItem[]>) => response));\r\n }\r\n getRecentNews(): Observable<IResponse<PublicNewListItem[]>> {\r\n \r\n return this._http.get(`${this.url}/publicnews?page=1&pageSize=5&isSortDesc=true`)\r\n .pipe(map((response: IResponse<PublicNewListItem[]>) => response));\r\n }\r\n getRelatedNews(Id: number): Observable<RelatedNewListItem[]> {\r\n \r\n return this._http.get(`${this.url}/publicnews/${Id}/relates`)\r\n .pipe(map((response: RelatedNewListItem[]) => response));\r\n }\r\n\r\n GetById(Id: number): Observable<PublicNewDetailItem> {\r\n return this._http.get(`${this.url}/publicnews/${Id}?update=true`)\r\n .pipe(map((response: PublicNewDetailItem) => response))\r\n }\r\n}\r\nexport class GetAllNewsFilter extends PagnitionRequest{\r\n categoryId?: number;\r\n dateFrom?: any;\r\n dateEnd?: any;\r\n title?: string;\r\n}\r\nexport interface PublicNewListItem\r\n{\r\n id: number;\r\n title: string;\r\n categoryId: number;\r\n category: string;\r\n thumbnail: string;\r\n totalViews: number;\r\n totalComments: number;\r\n publishedOnDate: Date | string;\r\n}\r\nexport interface PublicNewDetailItem\r\n{\r\n id: number;\r\n title: 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}\r\n\r\nexport interface RelatedNewListItem\r\n{\r\n id: number;\r\n title: string;\r\n thumbnail: string;\r\n totalComments: number;\r\n totalViews: number;\r\n publishedOnDate: Date | string;\r\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ListPrivateNewsComponent } from './private-news/list-private-news/list-private-news.component';\r\nimport { PrivateNewDetailComponent } from './private-news/private-new-detail/private-new-detail.component';\r\nimport { PrivateNewsComponent } from './private-news/private-news.component';\r\nimport { ListProfessionalNewsComponent } from './professional-news/list-professional-news/list-professional-news.component';\r\nimport { ProfessionalNewDetailComponent } from './professional-news/professional-new-detail/professional-new-detail.component';\r\nimport { ProfessionalNewsComponent } from './professional-news/professional-news.component';\r\nimport { NewDetailComponent } from './public-news/detail/detail.component';\r\nimport { ListPublicNewsComponent } from './public-news/list-public-news/list-public-news.component';\r\nimport { PublicNewsComponent } from './public-news/public-news.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: PublicNewsComponent,\r\n children: [\r\n {\r\n path: '',\r\n component: ListPublicNewsComponent,\r\n pathMatch: 'full',\r\n data: {\r\n breadcrumb: 'Tin tức',\r\n breadcrumb_en: 'News',\r\n title: 'Tin tức chung',\r\n title_en: 'News',\r\n }\r\n },\r\n {\r\n path: 'chi-tiet/:Id',\r\n pathMatch: 'full',\r\n component: NewDetailComponent\r\n }\r\n ]\r\n },\r\n {\r\n path: 'noi-bo',\r\n component: PrivateNewsComponent,\r\n\r\n children: [\r\n {\r\n path: '',\r\n component: ListPrivateNewsComponent,\r\n pathMatch: 'full',\r\n data: {\r\n breadcrumb: 'Tin tức nội bộ',\r\n breadcrumb_en: 'Inernal News',\r\n title: 'Tin tức nội bộ',\r\n title_en: 'Inernal News',\r\n }\r\n },\r\n {\r\n path: 'chi-tiet/:Id',\r\n pathMatch: 'full',\r\n component: PrivateNewDetailComponent\r\n }\r\n ]\r\n },\r\n {\r\n path: 'chuyen-mon',\r\n component: ProfessionalNewsComponent,\r\n\r\n children: [\r\n {\r\n path: '',\r\n component: ListProfessionalNewsComponent,\r\n pathMatch: 'full',\r\n data: {\r\n breadcrumb: 'Tin tức',\r\n breadcrumb_en: 'Specialist News',\r\n title: 'Tin tức chuyên môn',\r\n title_en: 'Specialist News',\r\n }\r\n },\r\n {\r\n path: 'chi-tiet/:Id',\r\n pathMatch: 'full',\r\n component: ProfessionalNewDetailComponent\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class NewsRoutingModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-public-news',\r\n templateUrl: './public-news.component.html',\r\n styleUrls: ['./public-news.component.scss']\r\n})\r\nexport class PublicNewsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<router-outlet></router-outlet>","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { SEOService } from 'src/app/services/seo/seoservice.service';\r\nimport { SubSink } from 'subsink';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { NewDetailItem, NewsService, RelatedNewListItem } from 'src/app/services/news/news.service';\r\nimport { AuthService } from 'src/app/services/auth/auth.service';\r\ndeclare let FB: any;\r\n@Component({\r\n selector: 'app-private-new-detail',\r\n templateUrl: './private-new-detail.component.html',\r\n styleUrls: ['./private-new-detail.component.scss']\r\n})\r\nexport class PrivateNewDetailComponent implements OnInit, OnDestroy {\r\n isPrivate: boolean = false;\r\n new: NewDetailItem;\r\n Id: number;\r\n private sub: SubSink = new SubSink();\r\n image_data_root: string = getImageUploadUrl(UploadUrls.NEW);\r\n currentUrl: string = window.location.href;\r\n selectedIndex = 0;\r\n isFbParsed: boolean;\r\n related_news: RelatedNewListItem[];\r\n currentUser: any;\r\n constructor(private activatedRoute: ActivatedRoute,\r\n private _service: NewsService,\r\n private _seoService: SEOService,\r\n private snackBar: MatSnackBar,\r\n private _auth: AuthService\r\n ) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sub.sink = this.activatedRoute.params.subscribe(params => {\r\n this.Id = +params['Id'];\r\n this.sub.sink = this._service.GetDetail(this.Id).subscribe(res => {\r\n if (res) {\r\n this.new = res.data;\r\n setTimeout(() => {\r\n FB.XFBML.parse();\r\n }, 500);\r\n this.updateMeta();\r\n this.getRelatedNews();\r\n }\r\n },\r\n error => {\r\n alert('Tải dữ liệu không thành công');\r\n location.href = \"/\";\r\n }\r\n )\r\n });\r\n this.sub.sink = this._auth.currentUser.subscribe(res => {\r\n this.currentUser = res;\r\n })\r\n }\r\n updateMeta() {\r\n setTimeout(() => {\r\n // let des = this.new.htmlContent.substr(0, 250).replace(/<.+?>/g, \"\");\r\n this._seoService.updateMetaInfo(this.new.summary, \"article\", this.image_data_root + '/' + this.new.id + '/' + this.new.thumbnail, \"\");\r\n }, 500);\r\n\r\n }\r\n getRelatedNews() {\r\n if (this.new) {\r\n this.sub.sink = this._service.getRelatedNews(this.new.id).subscribe(res => {\r\n if (res) {\r\n this.related_news = res.data;\r\n }\r\n })\r\n }\r\n\r\n }\r\n copyUrl() {\r\n this.snackBar.open('Đã sao chép liên kết bài viết hiện tại', null, { duration: 2000 });\r\n }\r\n OnSelectedIndexChange($event) {\r\n console.log(this.selectedIndex);\r\n if (this.isFbParsed) return;\r\n if (this.selectedIndex == 1) {\r\n FB.XFBML.parse();\r\n this.isFbParsed = true;\r\n }\r\n }\r\n}\r\n\r\n","<div class=\"body\">\r\n <div id=\"new_area\" *ngIf=\"new\">\r\n <div class=\"row brd_btm\">\r\n <div class=\"col-lg-9 brd_right\">\r\n <div class=\"padding_left detail_title_area\">\r\n <div class=\"page_title_area \">\r\n <div class=\"page_breadcrum\">\r\n <a [routerLink]=\"'/'\">Trang chủ</a>\r\n <a [routerLink]=\"'/tin-tuc/noi-bo/the-loai/noi-bo'\" class=\"active\">Tin tức nội bộ</a>\r\n\r\n </div>\r\n <!-- <app-breadcrumb></app-breadcrumb> -->\r\n </div>\r\n <div class=\"title_area\">\r\n <h2 class=\"title t_color_2 t_bold\">{{new.title}}\r\n </h2>\r\n <div class=\"new_info\">\r\n <div class=\"author\">\r\n\r\n <span class=\"t_color_3\">\r\n {{new.publishedOnDate | date:'dd/MM/yyyy'}}\r\n </span>\r\n </div>\r\n <div>\r\n <span>\r\n <img src=\"/assets/images/catalog.svg\">\r\n\r\n </span>\r\n <span class=\"t_color_3\">\r\n {{new.category}}\r\n </span>\r\n </div>\r\n <div>\r\n <span>\r\n <img src=\"/assets/images/view.svg\">\r\n\r\n </span>\r\n <span class=\"t_color_3\">\r\n {{new.totalViews}} Lượt xem\r\n </span>\r\n </div>\r\n <div>\r\n <span>\r\n <img src=\"/assets/images/comment.svg\">\r\n\r\n </span>\r\n <span class=\"t_color_3\">\r\n {{new.totalComments}} Lượt bình luận\r\n </span>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <!-- <div class=\"scrolldown_sign t_color_3\">Cuộn để xem thêm →</div> -->\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-lg-9 brd_right\">\r\n <div id=\"left_box\">\r\n\r\n <div id=\"new_box\" class=\"padding_left\">\r\n\r\n\r\n <div class=\"ck-content\" [innerHTML]=\"new.htmlContent | safeHtml\">\r\n\r\n </div>\r\n\r\n </div>\r\n <app-new-detail-actions [id]=\"Id\"></app-new-detail-actions>\r\n <div id=\"comment_area\" class=\"padding_left\">\r\n <mat-tab-group dynamicHeight animationDuration=\"0ms\" [selectedIndex]=\"1\"\r\n [(selectedIndex)]=\"selectedIndex\" (selectedTabChange)=\"OnSelectedIndexChange($event)\">\r\n <mat-tab>\r\n <ng-template mat-tab-label>\r\n\r\n BÌNH LUẬN TRỰC TIẾP\r\n </ng-template>\r\n <app-user-comment-box [targetId]=\"Id\" [targetType]=\"1\"></app-user-comment-box>\r\n </mat-tab>\r\n <mat-tab>\r\n <ng-template mat-tab-label>\r\n\r\n BÌNH LUẬN BẰNG FACEBOOK\r\n </ng-template>\r\n <div id=\"new-detail-fb-comment\">\r\n <div class=\"fb-comments\" data-lazy=\"true\" [attr.data-href]=\"currentUrl\"\r\n data-numposts=\"8\" data-width=\"100%\"></div>\r\n </div>\r\n\r\n </mat-tab>\r\n </mat-tab-group>\r\n <!-- -->\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <div id=\"right_box\">\r\n <div id=\"author_box\" *ngIf=\"currentUser\">\r\n <h3 class=\"t_color_2\">\r\n NGƯỜI VIẾT BÀI\r\n </h3>\r\n <app-user-box [userId]=\"new.authorId\"></app-user-box>\r\n\r\n </div>\r\n <app-related-news [items]=\"related_news\" [data_root]=\"image_data_root\" [prefix]=\"'/tin-tuc/noi-bo'\">\r\n </app-related-news>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n</div>","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { SEOService } from 'src/app/services/seo/seoservice.service';\r\nimport { SubSink } from 'subsink';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { PublicNewDetailItem, PublicNewService, RelatedNewListItem } from 'src/app/services/public-new/public-new.service';\r\ndeclare let FB: any;\r\n@Component({\r\n selector: 'app-new-detail',\r\n templateUrl: './detail.component.html',\r\n styleUrls: ['./detail.component.scss']\r\n})\r\nexport class NewDetailComponent implements OnInit, OnDestroy {\r\n isPrivate: boolean = false;\r\n new: PublicNewDetailItem;\r\n Id: number;\r\n related_news: RelatedNewListItem[];\r\n private sub: SubSink = new SubSink();\r\n image_data_root: string = getImageUploadUrl(UploadUrls.PUBLIC_NEW);\r\n currentUrl: string = window.location.href;\r\n isFbParsed: boolean;\r\n selectedIndex = 0;\r\n constructor(private activatedRoute: ActivatedRoute, private _service: PublicNewService, private _seoService: SEOService,\r\n private snackBar: MatSnackBar\r\n ) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sub.sink = this.activatedRoute.params.subscribe(params => {\r\n this.Id = +params['Id'];\r\n this.sub.sink = this._service.GetById(this.Id).subscribe(res => {\r\n if (res) {\r\n this.new = res;\r\n setTimeout(() => {\r\n FB.XFBML.parse();\r\n }, 500);\r\n this.updateMeta();\r\n this.getRelatedNews();\r\n }\r\n })\r\n });\r\n }\r\n updateMeta() {\r\n setTimeout(() => {\r\n let des = this.new.htmlContent.substr(0, 250).replace(/<.+?>/g, \"\");\r\n this._seoService.updateMetaInfo(des, \"article\", this.image_data_root + '/' + this.new.id + '/' + this.new.thumbnail, \"\");\r\n }, 500);\r\n\r\n }\r\n getRelatedNews() {\r\n if (this.new) {\r\n this.sub.sink = this._service.getRelatedNews(this.new.id).subscribe(res => {\r\n if (res) {\r\n this.related_news = res;\r\n }\r\n })\r\n }\r\n\r\n }\r\n copyUrl() {\r\n this.snackBar.open('Đã sao chép liên kết bài viết hiện tại', null, { duration: 2000 });\r\n }\r\n OnSelectedIndexChange($event) {\r\n console.log(this.selectedIndex);\r\n if (this.isFbParsed) return;\r\n if (this.selectedIndex == 1) {\r\n FB.XFBML.parse();\r\n this.isFbParsed = true;\r\n }\r\n }\r\n}\r\n\r\n","<div class=\"body\">\r\n <div id=\"new_area\" *ngIf=\"new\">\r\n <div class=\"row brd_btm\">\r\n <div class=\"col-lg-9 brd_right\">\r\n <div class=\"padding_left detail_title_area\">\r\n <div class=\"page_title_area\">\r\n <div class=\"page_breadcrum\">\r\n <a [routerLink]=\"'/'\">{{'APP.home' |translate}}</a>\r\n <a [routerLink]=\"'/tin-tuc'\">{{'NEWS.general' |translate}}</a>\r\n \r\n </div>\r\n \r\n </div>\r\n <div class=\"title_area\">\r\n <h2 class=\"title t_color_3\">{{new.title}}\r\n </h2>\r\n <div class=\"new_info\">\r\n <div class=\"author\">\r\n \r\n <span class=\"t_color_3\">\r\n {{new.publishedOnDate | date:'dd/MM/yyyy'}}\r\n </span>\r\n </div>\r\n <div>\r\n <span>\r\n <img src=\"/assets/images/catalog.svg\">\r\n \r\n </span>\r\n <span class=\"t_color_3\">\r\n {{new.category}}\r\n </span>\r\n </div>\r\n <div>\r\n <span>\r\n <img src=\"/assets/images/view.svg\">\r\n \r\n </span>\r\n <span class=\"t_color_3\">\r\n {{new.totalViews}} <span>{{'COMMON.totalviews' |translate}}</span>\r\n </span>\r\n </div>\r\n <div>\r\n <span>\r\n <img src=\"/assets/images/comment.svg\">\r\n \r\n </span>\r\n <span class=\"t_color_3\">\r\n {{new.totalComments}} <span>{{'COMMON.totalcomments' |translate}}</span>\r\n </span>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n <div class=\"col-lg-3\">\r\n <!-- <div class=\"scrolldown_sign t_color_3\">{{'COMMON.scrolldown' |translate}}</div> -->\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-lg-9 brd_right\">\r\n <div id=\"left_box\">\r\n \r\n <div id=\"new_box\" class=\"padding_left\">\r\n\r\n \r\n <div class=\"ck-content\" [innerHTML]=\"new.htmlContent | safeHtml\">\r\n\r\n </div>\r\n\r\n </div>\r\n <div id=\"share_area\" class=\"padding_right brd_top brd_btm\">\r\n <div class=\"padding_left\">\r\n <div class=\"fb-share-button\"\r\n data-size=\"large\"\r\n data-lazy=\"true\"\r\n [attr.data-href]=\"'http://vtk.com.vn/tin-tuc/chi-tiet/'+new.id\"\r\n data-layout=\"button_count\">\r\n </div>\r\n <a class=\"btn_copy\" [cdkCopyToClipboard]=\"currentUrl\" (click)=\"copyUrl()\">\r\n <img src=\"/assets/images/icons/copy.png\">\r\n <span>{{'COMMON.copylink' |translate}}</span>\r\n </a>\r\n </div>\r\n\r\n </div>\r\n <div id=\"comment_area\" class=\"padding_left\">\r\n <mat-tab-group dynamicHeight animationDuration=\"0ms\" [(selectedIndex)]=\"selectedIndex\" (selectedTabChange)=\"OnSelectedIndexChange($event)\">\r\n <mat-tab>\r\n <ng-template mat-tab-label>\r\n <span>{{'COMMON.directcomment' |translate}}</span>\r\n \r\n </ng-template>\r\n <app-user-comment-box [targetId]=\"Id\" [targetType]=\"2\"></app-user-comment-box>\r\n </mat-tab>\r\n <mat-tab >\r\n <ng-template mat-tab-label>\r\n <span>{{'COMMON.facebookcomment' |translate}}</span>\r\n \r\n </ng-template>\r\n <div id=\"new-detail-fb-comment\">\r\n <div class=\"fb-comments\" data-lazy=\"true\"\r\n attr.data-href=\"http://vtk.com.vn/tin-tuc/chi-tiet/{{new.id}}\" data-numposts=\"8\"\r\n data-width=\"100%\"></div>\r\n </div>\r\n\r\n </mat-tab>\r\n </mat-tab-group>\r\n <!-- -->\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <div id=\"right_box\">\r\n <!-- <div id=\"author_box\">\r\n <h3 class=\"t_color_3\">\r\n NGƯỜI VIẾT BÀI\r\n </h3>\r\n <app-user-box></app-user-box>\r\n\r\n </div> -->\r\n <app-related-news [items]=\"related_news\" [data_root]=\"image_data_root\" [prefix]=\"'/tin-tuc'\"></app-related-news>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n</div>","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\nimport { DateAdapter } from '@angular/material/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport * as _moment from 'moment'\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\nimport { FullscreenPopupComponent, FullScreenPopupData } from 'src/app/components/shared/dialogs/fullscreen-popup/fullscreen-popup.component';\nimport { LanguageService } from 'src/app/services/language.service';\nimport { NewCategoryService } from 'src/app/services/new-category/new-category.service';\nimport { GetAllNewDisplayFilter, NewDisplayListItem, NewsService } from 'src/app/services/news/news.service';\nimport { SubSink } from 'subsink';\n\n@Component({\n selector: 'app-list-professional-news',\n templateUrl: './list-professional-news.component.html',\n styleUrls: ['./list-professional-news.component.scss']\n})\nexport class ListProfessionalNewsComponent implements OnInit, OnDestroy {\n\n view_types: any[] = [];\n active_type: any;\n news: NewDisplayListItem[] = [];\n filterForm: FormGroup;\n dm_category: any[];\n filter: GetAllNewDisplayFilter = new GetAllNewDisplayFilter(1);\n disabled: boolean;\n private sub: SubSink = new SubSink();\n root_image = getImageUploadUrl(UploadUrls.NEW);\n titleControl = new FormControl();\n disabledScroll: boolean = true;\n totalRecords: number;\n loading: boolean;\n constructor(private _adapter: DateAdapter<any>, private formBuilder: FormBuilder,\n public dialog: MatDialog, private _service: NewsService,\n private activatedRoute: ActivatedRoute, private _cate: NewCategoryService,\n private langService: LanguageService\n ) {\n\n this._adapter.setLocale(this.langService.currentLang);\n this.filterForm = this.formBuilder.group({\n fromDate: [''],\n toDate: [''],\n category: ['']\n });\n this.view_types.push({\n id: 1,\n title: this.langService.isVietnamese ? 'Hình ảnh' : 'Grids'\n });\n this.view_types.push({\n id: 2,\n title: this.langService.isVietnamese ? 'Danh sách' : 'List'\n });\n this.active_type = this.view_types[1];\n }\n ngOnDestroy(): void {\n this.sub.unsubscribe();\n }\n changeViewType() {\n this.disabled = true;\n this.active_type = this.view_types.filter(c => c != this.active_type)[0];\n setTimeout(() => {\n this.disabled = false;\n }, 300);\n }\n get f() { return this.filterForm.controls; }\n onSave() {\n\n\n }\n ngOnInit(): void {\n this.loadCategory();\n\n this.sub.sink = this.activatedRoute.queryParams.subscribe(params => {\n if (params['cate']) {\n this.filter.categoryId = +params['cate'];\n\n this.filterForm.controls['category'].patchValue(this.filter.categoryId);\n }\n if (params['from_date']) {\n this.filter.dateFrom = new Date(params['from_date']);\n\n this.filterForm.controls['fromDate'].patchValue(this.filter.dateFrom);\n }\n if (params['to_date']) {\n this.filter.dateEnd = new Date(params['to_date']);\n this.filterForm.controls['toDate'].patchValue(this.filter.dateEnd);\n }\n if (params['title']) {\n this.filter.title = params['title'].length > 0 ? params['title'] : null;\n this.titleControl.setValue(this.filter.title);\n }\n this.loadData();\n this.filterForm.valueChanges.subscribe(() => this.filterChanged());\n\n });\n }\n\n loadData() {\n this.loading = true;\n this.sub.sink = this._service.getAllPrivateNews(this.filter).subscribe(res => {\n if (res.status == 1) {\n this.news = res.data;\n this.totalRecords = res.dataCount;\n if (this.news.length > this.totalRecords) {\n this.disabledScroll = true;\n }\n else {\n this.disabledScroll = false;\n this.filter.page++;\n }\n }\n }).add(() => this.loading = false);\n }\n loadMore() {\n this.loading = true;\n this.sub.sink = this._service.getAllPrivateNews(this.filter).subscribe(res => {\n if (res.status == 1) {\n this.news = [...this.news, ...res.data];\n\n this.totalRecords = res.dataCount;\n if (this.news.length >= this.totalRecords) {\n this.disabledScroll = true;\n this.filter.page++;\n }\n else {\n this.disabledScroll = false;\n }\n }\n }).add(() => this.loading = false);\n }\n filterChanged() {\n let mmFromDate = this.f['fromDate'].value;\n let mmEndDate = this.f['toDate'].value;\n this.filter.categoryId = this.f['category'].value == -1 ? null : this.f['category'].value;\n this.filter.dateFrom = mmFromDate ? _moment(mmFromDate).toDate() : null;\n this.filter.dateEnd = mmEndDate ? _moment(mmEndDate).toDate() : null;\n\n this.filter.page = 1;\n\n let params = this.filter.categoryId ? \"&cate=\" + this.filter.categoryId : \"\";\n if (this.filter.dateFrom) {\n params += \"&from_date=\" + _moment(this.filter.dateFrom).format('YYYY-MM-DD');\n }\n if (this.filter.dateEnd) {\n params += \"&to_date=\" + _moment(this.filter.dateEnd).format('YYYY-MM-DD');\n }\n if (this.titleControl.value?.length > 0) {\n this.filter.title = this.titleControl.value;\n params += '&title=' + this.filter.title;\n }\n\n if (params.length > 0) params = \"?\" + params.substring(1);\n location.href = window.location.href.split('?')[0] + params;\n }\n loadCategory() {\n\n this.dm_category = [\n {\n id: -1,\n name: this.langService.isVietnamese ? 'Tất cả thể loại' : 'All'\n }\n ];\n this.sub.sink = this._cate.GetAllBase(this.filter.cateType).subscribe(res => {\n if (res.status) {\n this.dm_category = [...this.dm_category, ...res.data];\n }\n })\n }\n openDialog(): void {\n let dataPopup: FullScreenPopupData = {\n image: \"/assets/images/news/event.png\",\n link: \"\",\n title: \"\"\n };\n const dialogRef = this.dialog.open(FullscreenPopupComponent, {\n data: dataPopup,\n panelClass: [\"no_padding\", \"bg_transparent\"],\n backdropClass: \"dark_backdrop\"\n });\n\n // dialogRef.afterClosed().subscribe(result => {\n // console.log('The dialog was closed');\n // this.animal = result;\n // });\n }\n clearStartDate() {\n this.filter.dateFrom = null;\n this.filterForm.controls['fromDate'].reset();\n }\n clearEndDate() {\n this.filter.dateEnd = null;\n this.filterForm.controls['toDate'].reset();\n }\n\n}\n","<div id=\"top_middle\" class=\"padding_top\">\n <div class=\"row\">\n <div class=\"inside_box padding_left page_title_area\">\n <app-breadcrumb></app-breadcrumb>\n <!-- <h1 class=\"t_color_3 page_title\">TIN TỨC CHUYÊN MÔN</h1> -->\n <form class=\"search_form\">\n <input type=\"text\" class=\"search_input form-control\" name=\"title\" [formControl]=\"titleControl\"\n [placeholder]=\"'COMMON.keywords' | translate\">\n <img src=\"/assets/images/loupe.svg\">\n </form>\n\n </div>\n <div class=\"col-lg-3 brd_right\">\n\n </div>\n <div class=\"col-lg-3 brd_right\">\n\n </div>\n <div class=\"col-lg-3 brd_right \">\n\n </div>\n <div class=\"col-lg-3\">\n <div class=\"inside_box\" id=\"new_info\">\n <div class=\"title t_bold\">{{'NEWS.specialist' | translate}}</div>\n <a [href]=\"'/tin-tuc/chuyen-mon'\" [class.active]=\"filter.categoryId==-1||filter.categoryId==null\"> <span\n class=\"hyphen_start\"></span>\n <span>{{'NEWS.all' | translate}}</span></a>\n <a *ngFor=\"let item of dm_category\" [class.hidden]=\"item.id==-1\"\n [href]=\"'/tin-tuc/chuyen-mon?cate='+item.id\"\n [class.active]=\"filter.categoryId!=-1&&filter.categoryId==item.id\">\n <span class=\"hyphen_start\"></span>\n <span>{{item.name}}</span>\n </a>\n </div>\n </div>\n </div>\n</div>\n<div class=\"body\">\n <div id=\"filter_area\">\n <div id=\"filter_box\" class=\"filter_area brd_top brd_btm\">\n <form [formGroup]=\"filterForm\" (ngSubmit)=\"onSave()\">\n <div class=\"row\">\n <div class=\"col-lg-6 brd_right\">\n <div class=\"form-group filter_option padding_right padding_left\">\n <div class=\"select_box brd_right brd_left\">\n <span class=\"label\">{{'NEWS.filterBy' | translate}}</span>\n <mat-form-field appearance=\"none\" floatLabel=\"never\">\n\n <mat-select [formControl]=\"f.category\" name=\"category\">\n <mat-option *ngFor=\"let c of dm_category\" [value]=\"c.id\">\n {{c.name}}\n </mat-option>\n\n </mat-select>\n </mat-form-field>\n </div>\n </div>\n </div>\n <div class=\"col-lg-3 row\">\n <div class=\"col-lg-6 brd_right\">\n <div class=\"form-group filter_option\">\n <div class=\"datetime_box\">\n <span>{{'COMMON.from' | translate}}</span>\n <input [matDatepicker]=\"fromDate\" [formControl]=\"f.fromDate\" matInput readonly />\n <mat-datepicker-toggle matSuffix [for]=\"fromDate\"></mat-datepicker-toggle>\n <mat-datepicker-toggle matSuffix (click)=\"clearStartDate()\" *ngIf=\"filter.dateFrom\">\n <span matDatepickerToggleIcon>X</span>\n </mat-datepicker-toggle>\n <mat-datepicker #fromDate></mat-datepicker>\n\n </div>\n </div>\n </div>\n <div class=\"col-lg-6 brd_right\">\n <div class=\"form-group filter_option\">\n <div class=\"datetime_box\">\n <span>{{'COMMON.to' | translate}}</span>\n <input [matDatepicker]=\"toDate\" [formControl]=\"f.toDate\" matInput readonly />\n\n <mat-datepicker-toggle matSuffix [for]=\"toDate\"></mat-datepicker-toggle>\n <mat-datepicker-toggle matSuffix (click)=\"clearEndDate()\" *ngIf=\"filter.dateEnd\">\n <span matDatepickerToggleIcon>X</span>\n </mat-datepicker-toggle>\n <mat-datepicker #toDate></mat-datepicker>\n\n </div>\n </div>\n </div>\n\n </div>\n <div class=\"col-lg-3\">\n <div class=\"form-group filter_option padding_right\">\n <button [disabled]=\"disabled\" *ngIf=\"active_type\" (click)=\"changeViewType()\"\n id=\"switch_new_type\" type=\"button\" class=\"btn t_size btn_icon\">\n <span class=\"t_color_gray t_bold\">{{'COMMON.display' | translate}} <span\n class=\"t_color_1\">{{active_type.title}}</span></span>\n <img src=\"/assets/images/icons/monitor.png\" class=\"icon\">\n </button>\n </div>\n </div>\n </div>\n </form>\n <div class=\"row grid_lines brd_top\">\n <div class=\"col-lg-3 brd_right\"></div>\n <div class=\"col-lg-3 brd_right\"></div>\n <div class=\"col-lg-3 brd_right\"></div>\n <div class=\"col-lg-3\"></div>\n </div>\n </div>\n\n </div>\n <div class=\"body_section t_size\">\n <div id=\"news_area\" class=\"brd_top\" [ngSwitch]=\"active_type.id\" infiniteScroll [infiniteScrollDistance]=\"2\"\n [infiniteScrollThrottle]=\"50\" (scrolled)=\"loadMore()\" [infiniteScrollDisabled]=\"disabledScroll\">\n <div *ngSwitchCase=\"1\">\n <app-list-news-row [news]=\"news\" [root_image]=\"root_image\" [prefix]=\"'/tin-tuc/chuyen-mon/'\">\n </app-list-news-row>\n </div>\n <div *ngSwitchDefault>\n <app-list-news-grid [news]=\"news\" [root_image]=\"root_image\" [prefix]=\"'/tin-tuc/chuyen-mon/'\">\n </app-list-news-grid>\n </div>\n <div class=\"loading_more brd_btm\" *ngIf=\"loading\">\n <img src=\"/assets/images/loading.gif\">\n </div>\n </div>\n </div>\n</div>","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { DateAdapter } from '@angular/material/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport * as _moment from 'moment'\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { CategoryService, ItemList } from 'src/app/services/category/category.service';\r\nimport { LanguageService } from 'src/app/services/language.service';\r\nimport { GetAllNewsFilter, PublicNewListItem, PublicNewService } from 'src/app/services/public-new/public-new.service';\r\nimport { SubSink } from 'subsink';\r\n\r\n\r\n@Component({\r\n selector: 'app-list-public-news',\r\n templateUrl: './list-public-news.component.html',\r\n styleUrls: ['./list-public-news.component.scss']\r\n})\r\nexport class ListPublicNewsComponent implements OnInit {\r\n view_types: any[] = [];\r\n active_type: any;\r\n news: PublicNewListItem[] = [];\r\n dm_category: ItemList[];\r\n disabled: boolean;\r\n private sub: SubSink = new SubSink();\r\n filter: GetAllNewsFilter = new GetAllNewsFilter();\r\n totalRecords: number;\r\n categoryControl = new FormControl();\r\n date_fromControl = new FormControl();\r\n date_endControl = new FormControl();\r\n titleControl = new FormControl();\r\n loading = false;\r\n disabledScroll: boolean = true;\r\n root_image = getImageUploadUrl(UploadUrls.PUBLIC_NEW);\r\n constructor(private _adapter: DateAdapter<any>,\r\n private _category: CategoryService, private _service: PublicNewService,\r\n private activatedRoute: ActivatedRoute,\r\n private langService: LanguageService\r\n ) {\r\n this._adapter.setLocale(this.langService.currentLang);\r\n this.dm_category = [{\r\n value: -1, label: this.langService.isVietnamese ? 'Tất cả thể loại' : 'All'\r\n }];\r\n this.view_types.push({\r\n id: 1,\r\n title: this.langService.isVietnamese ? 'Danh sách' : 'List'\r\n });\r\n this.view_types.push({\r\n id: 2,\r\n title: this.langService.isVietnamese ? 'Hình ảnh' : 'Grids'\r\n });\r\n this.active_type = this.view_types[0];\r\n this.categoryControl.setValue(-1);\r\n\r\n }\r\n loadCategories() {\r\n this.sub.sink = this._category.GetNewCategories(false).subscribe(cates => {\r\n if (cates) {\r\n this.dm_category = [...this.dm_category, ...cates];\r\n }\r\n })\r\n }\r\n prepareFormFilter() {\r\n this.sub.sink = this.categoryControl.valueChanges.subscribe(res => {\r\n this.filterChanged();\r\n });\r\n this.sub.sink = this.date_fromControl.valueChanges.subscribe(res => {\r\n this.filterChanged();\r\n });\r\n this.sub.sink = this.date_endControl.valueChanges.subscribe(res => {\r\n this.filterChanged();\r\n });\r\n }\r\n filterChanged() {\r\n let mmFromDate = this.date_fromControl.value;\r\n let mmEndDate = this.date_endControl.value;\r\n this.filter.categoryId = this.categoryControl.value == -1 ? null : this.categoryControl.value;\r\n this.filter.dateFrom = mmFromDate ? _moment(mmFromDate).toDate() : null;\r\n this.filter.dateEnd = mmEndDate ? _moment(mmEndDate).toDate() : null;\r\n\r\n this.filter.page = 1;\r\n this.filter.title = this.titleControl.value;\r\n let params = this.filter.categoryId ? \"&cate=\" + this.filter.categoryId : \"\";\r\n if (this.filter.dateFrom) {\r\n params += \"&from_date=\" + _moment(this.filter.dateFrom).format('YYYY-MM-DD');\r\n }\r\n if (this.filter.dateEnd) {\r\n params += \"&to_date=\" + _moment(this.filter.dateEnd).format('YYYY-MM-DD');\r\n }\r\n if (this.titleControl.value?.length > 0) {\r\n this.filter.title = this.titleControl.value;\r\n params += '&title=' + this.filter.title;\r\n }\r\n\r\n if (params.length > 0) params = \"?\" + params.substring(1);\r\n location.href = \"/tin-tuc\" + params;\r\n }\r\n changeViewType() {\r\n this.disabled = true;\r\n // this.filter.categoryId = null;\r\n // this.filter.dateEnd = null;\r\n // this.filter.dateFrom = null;\r\n // this.filter.title = null;\r\n // this.filter.page = 1;\r\n this.loadData();\r\n this.active_type = this.view_types.filter(c => c != this.active_type)[0];\r\n setTimeout(() => {\r\n this.disabled = false;\r\n }, 300);\r\n }\r\n ngOnInit(): void {\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n if (params['cate']) {\r\n this.filter.categoryId = +params['cate'];\r\n this.categoryControl.setValue(this.filter.categoryId);\r\n }\r\n if (params['from_date']) {\r\n this.filter.dateFrom = new Date(params['from_date']);\r\n\r\n this.date_fromControl.setValue(this.filter.dateFrom);\r\n }\r\n if (params['to_date']) {\r\n this.filter.dateEnd = new Date(params['to_date']);\r\n this.date_endControl.setValue(this.filter.dateEnd);\r\n }\r\n if (params['title']) {\r\n this.filter.title = params['title'].length > 0 ? params['title'] : null;\r\n this.titleControl.setValue(this.filter.title);\r\n }\r\n this.loadData();\r\n this.prepareFormFilter();\r\n });\r\n this.loadCategories();\r\n }\r\n loadData() {\r\n this.sub.sink = this._service.getAllPublicNews(this.filter).subscribe(res => {\r\n if (res.status == 1) {\r\n this.news = res.data;\r\n\r\n this.totalRecords = res.dataCount;\r\n if (this.news.length >= this.totalRecords) {\r\n this.disabledScroll = true;\r\n }\r\n else {\r\n this.disabledScroll = false;\r\n this.filter.page++;\r\n }\r\n }\r\n });\r\n }\r\n loadMore() {\r\n this.sub.sink = this._service.getAllPublicNews(this.filter).subscribe(res => {\r\n if (res.status == 1) {\r\n this.news = [...this.news, ...res.data];\r\n\r\n this.totalRecords = res.dataCount;\r\n if (this.news.length >= this.totalRecords) {\r\n this.disabledScroll = true;\r\n }\r\n else {\r\n this.disabledScroll = false;\r\n this.filter.page++;\r\n }\r\n }\r\n });\r\n }\r\n}\r\n","<div id=\"top_middle\" class=\"padding_top\">\r\n <div class=\"row\">\r\n <div class=\"inside_box padding_left\">\r\n <app-breadcrumb></app-breadcrumb>\r\n <form>\r\n <input type=\"text\" [formControl]=\"titleControl\" name=\"title\" class=\"search_input form-control\"\r\n [placeholder]=\"'COMMON.keywords' | translate\">\r\n <img src=\"/assets/images/loupe.svg\">\r\n </form>\r\n </div>\r\n <div class=\"col-lg-3 brd_right\">\r\n\r\n </div>\r\n <div class=\"col-lg-3 brd_right\">\r\n\r\n </div>\r\n <div class=\"col-lg-3 brd_right \">\r\n\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <div class=\"inside_box\" id=\"new_info\">\r\n <div class=\"title t_bold\">{{'NEWS.general' |translate}}</div>\r\n <a href=\"/tin-tuc\" [class.active]=\"filter.categoryId==-1||filter.categoryId==null\"> <span\r\n class=\"hyphen_start\"></span>\r\n <span>{{'NEWS.all' |translate}}</span></a>\r\n <a *ngFor=\"let item of dm_category\" [class.hidden]=\"item.value==-1\" href=\"tin-tuc?cate={{item.value}}\"\r\n [class.active]=\"filter.categoryId!=-1&&filter.categoryId==item.value\">\r\n <span class=\"hyphen_start\"></span>\r\n <span>{{item.label}}</span>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"body\">\r\n <div id=\"filter_area\">\r\n <div id=\"filter_box\" class=\"filter_area brd_top brd_btm\">\r\n <form>\r\n <div class=\"row\">\r\n <div class=\"col-lg-6 brd_right\">\r\n <div class=\"form-group filter_option padding_right padding_left\">\r\n <div class=\"select_box brd_right brd_left\">\r\n <span class=\"label\">{{'NEWS.category' |translate}}</span>\r\n <mat-form-field appearance=\"none\" floatLabel=\"never\">\r\n\r\n <mat-select [formControl]=\"categoryControl\" name=\"category\">\r\n <mat-option *ngFor=\"let c of dm_category\" [value]=\"c.value\">\r\n {{c.label}}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-3 row brd_right\">\r\n <div class=\"col-lg-6 brd_right\">\r\n <div class=\"form-group filter_option\">\r\n <div class=\"datetime_box\">\r\n <span>{{'COMMON.from' |translate}}</span>\r\n <input [matDatepicker]=\"fromDate\" [formControl]=\"date_fromControl\" matInput\r\n readonly />\r\n <mat-datepicker-toggle matSuffix [for]=\"fromDate\"></mat-datepicker-toggle>\r\n <mat-datepicker #fromDate></mat-datepicker>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-6\">\r\n <div class=\"form-group filter_option\">\r\n <div class=\"datetime_box\">\r\n <span>{{'COMMON.to' |translate}}</span>\r\n <input [matDatepicker]=\"toDate\" [formControl]=\"date_endControl\" matInput readonly />\r\n <mat-datepicker-toggle matSuffix [for]=\"toDate\"></mat-datepicker-toggle>\r\n <mat-datepicker #toDate></mat-datepicker>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <div class=\"form-group filter_option padding_right\">\r\n <button [disabled]=\"disabled\" *ngIf=\"active_type\" (click)=\"changeViewType()\"\r\n id=\"switch_new_type\" type=\"button\" class=\"btn t_size btn_icon\">\r\n <span class=\"t_color_gray t_bold\">{{'COMMON.display' |translate}} <span\r\n class=\"t_color_1\">{{active_type.title}}</span></span>\r\n <img src=\"/assets/images/icons/monitor.png\" class=\"icon\">\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n <div class=\"row grid_lines brd_top\">\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3\"></div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3\"></div>\r\n </div>\r\n </div>\r\n <div class=\"body_section t_size\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\r\n \r\n (scrolled)=\"loadMore()\" [infiniteScrollDisabled]=\"disabledScroll\">\r\n <div id=\"news_area\" class=\"brd_top\" [ngSwitch]=\"active_type.id\">\r\n <div *ngSwitchCase=\"2\">\r\n <app-list-news-row [news]=\"news\" [root_image]=\"root_image\" [prefix]=\"'/tin-tuc/'\"></app-list-news-row>\r\n </div>\r\n <div *ngSwitchDefault>\r\n <app-list-news-grid [news]=\"news\" [root_image]=\"root_image\" [prefix]=\"'/tin-tuc/'\"></app-list-news-grid>\r\n </div>\r\n <!-- <div class=\"loading_more brd_btm\">\r\n <img src=\"/assets/images/loading.gif\">\r\n </div> -->\r\n </div>\r\n </div>\r\n</div>","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { GetAllNewDisplayFilter, NewDisplayListItem, NewListItem, NewsService } from 'src/app/services/news/news.service';\r\nimport { PublicNewService } from 'src/app/services/public-new/public-new.service';\r\nimport { SubSink } from 'subsink';\r\n\r\n@Component({\r\n selector: 'app-list-news-row',\r\n templateUrl: './list-news-row.component.html',\r\n styleUrls: ['./list-news-row.component.scss']\r\n})\r\nexport class ListNewsRowComponent implements OnInit, OnDestroy {\r\n @Input(\"news\") news: NewListItem[];\r\n @Input(\"root_image\") image_data_root: string;\r\n @Input(\"prefix\") prefixLink: string;\r\n private sub: SubSink = new SubSink();\r\n related_news: any[] = [];\r\n constructor(private _service: PublicNewService, private _privateNewService: NewsService) { }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.prefixLink == '/tin-tuc/noi-bo/') {\r\n let filter: GetAllNewDisplayFilter = new GetAllNewDisplayFilter(1, 5, 0);\r\n this.sub.sink = this._privateNewService.getAllPrivateNews(filter).subscribe(res => {\r\n if (res) {\r\n this.related_news = res.data;\r\n }\r\n });\r\n }\r\n else if (this.prefixLink == '/tin-tuc/chuyen-mon/') {\r\n let filter: GetAllNewDisplayFilter = new GetAllNewDisplayFilter(1, 5, 1);\r\n this.sub.sink = this._privateNewService.getAllPrivateNews(filter).subscribe(res => {\r\n if (res) {\r\n this.related_news = res.data;\r\n }\r\n });\r\n }\r\n else {\r\n this.sub.sink = this._service.getRecentNews().subscribe(res => {\r\n if (res) {\r\n this.related_news = res.data;\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n}\r\n","<div class=\"row \">\r\n <div class=\"col-lg-9 brd_right\">\r\n <div class=\"list-news padding_left padding_right\">\r\n <a class=\"new_line brd_gray\" *ngFor=\"let item of news; let i=index\"\r\n [routerLink]=\"[prefixLink+'chi-tiet',item.id]\">\r\n <div class=\"img\" [defaultImage]=\"'/assets/images/notfound.png'\"\r\n [lazyLoad]=\"image_data_root+'/'+item.id+'/'+item.thumbnail+'?width=400'\"></div>\r\n <div class=\"card_info\">\r\n <div class=\"type\">\r\n <span class=\"t_color_2 \">{{item.category}}</span>\r\n </div>\r\n <div class=\"title t_color_3 t_bold\" title=\"{{item.title}}\">\r\n {{item.title}}\r\n </div>\r\n <div class=\"summary\" [innerHTML]=\"item.summary\"></div>\r\n <div class=\"bottom_info\">\r\n <div class=\"author\">\r\n <a href=\"#\" class=\"t_color_3\" *ngIf=\"item.author\">\r\n {{item.author}} -\r\n </a>\r\n\r\n <span class=\"t_color_3\">\r\n {{item.publishedOnDate | date:'dd/MM/yyyy'}}\r\n </span>\r\n </div>\r\n <div class=\"stats\">\r\n <span><img src=\"/assets/images/icons/view.svg\"> <span\r\n class=\"t_color_gray\">{{item.totalViews}}</span></span>\r\n <span><img src=\"/assets/images/icons/comment.svg\" style=\"width:14px\"> <span\r\n class=\"t_color_gray\">{{item.totalComments}}</span></span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </a>\r\n <div *ngIf=\"news.length==0\" class=\"empty\">\r\n <!-- <img src=\"/assets/images/empty.png\">\r\n <div>{{'COMMON.noresult' |translate}}</div>\r\n <a class=\"t_color_2\" href=\"{{prefixLink}}\">[{{'COMMON.backtolist' |translate}}]</a> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-3 brd_right\">\r\n <div class=\"related_news_box\">\r\n <app-related-news [items]=\"related_news\" [data_root]=\"image_data_root\" [prefix]=\"prefixLink\">\r\n </app-related-news>\r\n\r\n </div>\r\n\r\n </div>\r\n</div>","import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { DateAdapter } from '@angular/material/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as _moment from 'moment'\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { FullscreenPopupComponent, FullScreenPopupData } from 'src/app/components/shared/dialogs/fullscreen-popup/fullscreen-popup.component';\r\nimport { LanguageService } from 'src/app/services/language.service';\r\nimport { NewCategoryService } from 'src/app/services/new-category/new-category.service';\r\nimport { GetAllNewDisplayFilter, NewDisplayListItem, NewsService } from 'src/app/services/news/news.service';\r\nimport { SubSink } from 'subsink';\r\n@Component({\r\n selector: 'app-list-private-news',\r\n templateUrl: './list-private-news.component.html',\r\n styleUrls: ['./list-private-news.component.scss']\r\n})\r\nexport class ListPrivateNewsComponent implements OnInit, OnDestroy {\r\n view_types: any[] = [];\r\n active_type: any;\r\n news: NewDisplayListItem[] = [];\r\n filterForm: FormGroup;\r\n dm_category: any[];\r\n filter: GetAllNewDisplayFilter =new GetAllNewDisplayFilter(0);\r\n disabled: boolean;\r\n private sub: SubSink = new SubSink();\r\n root_image = getImageUploadUrl(UploadUrls.NEW);\r\n titleControl = new FormControl();\r\n disabledScroll: boolean = true;\r\n totalRecords: number;\r\n loading: boolean;\r\n constructor(private _adapter: DateAdapter<any>, private formBuilder: FormBuilder,\r\n private router: Router, public dialog: MatDialog, private _service: NewsService,\r\n private activatedRoute: ActivatedRoute, private _cate: NewCategoryService,\r\n private langService:LanguageService\r\n ) {\r\n\r\n this._adapter.setLocale(this.langService.currentLang);\r\n this.filterForm = this.formBuilder.group({\r\n fromDate: [''],\r\n toDate: [''],\r\n category: ['']\r\n });\r\n this.view_types.push({\r\n id: 1,\r\n title: this.langService.isVietnamese ? 'Hình ảnh' : 'Grids'\r\n });\r\n this.view_types.push({\r\n id: 2,\r\n title: this.langService.isVietnamese ? 'Danh sách' : 'List'\r\n });\r\n this.active_type = this.view_types[1];\r\n }\r\n ngOnDestroy(): void {\r\n this.sub.unsubscribe();\r\n }\r\n changeViewType() {\r\n this.disabled = true;\r\n this.active_type = this.view_types.filter(c => c != this.active_type)[0];\r\n setTimeout(() => {\r\n this.disabled = false;\r\n }, 300);\r\n }\r\n get f() { return this.filterForm.controls; }\r\n onSave() {\r\n\r\n\r\n }\r\n ngOnInit(): void {\r\n this.loadCategory();\r\n\r\n this.sub.sink = this.activatedRoute.queryParams.subscribe(params => {\r\n\r\n if (params['cate']) {\r\n this.filter.categoryId = +params['cate'];\r\n\r\n this.filterForm.controls['category'].patchValue(this.filter.categoryId);\r\n }\r\n if (params['from_date']) {\r\n this.filter.dateFrom = new Date(params['from_date']);\r\n\r\n this.filterForm.controls['fromDate'].patchValue(this.filter.dateFrom);\r\n }\r\n if (params['to_date']) {\r\n this.filter.dateEnd = new Date(params['to_date']);\r\n this.filterForm.controls['toDate'].patchValue(this.filter.dateEnd);\r\n }\r\n if (params['title']) {\r\n this.filter.title = params['title'].length > 0 ? params['title'] : null;\r\n this.titleControl.setValue(this.filter.title);\r\n }\r\n this.loadData();\r\n this.filterForm.valueChanges.subscribe(() => this.filterChanged());\r\n });\r\n }\r\n\r\n loadData() {\r\n this.loading = true;\r\n this.sub.sink = this._service.getAllPrivateNews(this.filter).subscribe(res => {\r\n if (res.status == 1) {\r\n this.news = res.data;\r\n this.totalRecords = res.dataCount;\r\n if (this.news.length > this.totalRecords) {\r\n this.disabledScroll = true;\r\n }\r\n else {\r\n this.disabledScroll = false;\r\n this.filter.page++;\r\n }\r\n }\r\n }).add(() => this.loading = false);\r\n }\r\n loadMore() {\r\n this.loading = true;\r\n this.sub.sink = this._service.getAllPrivateNews(this.filter).subscribe(res => {\r\n if (res.status == 1) {\r\n this.news = [...this.news, ...res.data];\r\n\r\n this.totalRecords = res.dataCount;\r\n if (this.news.length >= this.totalRecords) {\r\n this.disabledScroll = true;\r\n this.filter.page++;\r\n }\r\n else {\r\n this.disabledScroll = false;\r\n }\r\n }\r\n }).add(() => this.loading = false);\r\n }\r\n filterChanged() {\r\n let mmFromDate = this.f['fromDate'].value;\r\n let mmEndDate = this.f['toDate'].value;\r\n this.filter.categoryId = this.f['category'].value == -1 ? null : this.f['category'].value;\r\n this.filter.dateFrom = mmFromDate ? _moment(mmFromDate).toDate() : null;\r\n this.filter.dateEnd = mmEndDate ? _moment(mmEndDate).toDate() : null;\r\n\r\n this.filter.page = 1;\r\n\r\n let params = this.filter.categoryId ? \"&cate=\" + this.filter.categoryId : \"\";\r\n if (this.filter.dateFrom) {\r\n params += \"&from_date=\" + _moment(this.filter.dateFrom).format('YYYY-MM-DD');\r\n }\r\n if (this.filter.dateEnd) {\r\n params += \"&to_date=\" + _moment(this.filter.dateEnd).format('YYYY-MM-DD');\r\n }\r\n if (this.titleControl.value?.length > 0) {\r\n this.filter.title = this.titleControl.value;\r\n params += '&title=' + this.filter.title;\r\n }\r\n\r\n if (params.length > 0) params = \"?\" + params.substring(1);\r\n location.href = window.location.href.split('?')[0] + params;\r\n }\r\n loadCategory() {\r\n this.dm_category = [\r\n {\r\n id: -1,\r\n name: this.langService.isVietnamese ? 'Tất cả thể loại' : 'All'\r\n }\r\n ];\r\n this.sub.sink = this._cate.GetAllBase(this.filter.cateType).subscribe(res => {\r\n if (res.status==1) {\r\n this.dm_category = [...this.dm_category, ...res.data];\r\n }\r\n })\r\n }\r\n openDialog(): void {\r\n let dataPopup: FullScreenPopupData = {\r\n image: \"/assets/images/news/event.png\",\r\n link: \"\",\r\n title: \"\"\r\n };\r\n const dialogRef = this.dialog.open(FullscreenPopupComponent, {\r\n data: dataPopup,\r\n panelClass: [\"no_padding\", \"bg_transparent\"],\r\n backdropClass: \"dark_backdrop\"\r\n });\r\n\r\n // dialogRef.afterClosed().subscribe(result => {\r\n // console.log('The dialog was closed');\r\n // this.animal = result;\r\n // });\r\n }\r\n clearStartDate() {\r\n this.filter.dateFrom = null;\r\n this.filterForm.controls['fromDate'].reset();\r\n }\r\n clearEndDate() {\r\n this.filter.dateEnd = null;\r\n this.filterForm.controls['toDate'].reset();\r\n }\r\n}\r\n","<div id=\"top_middle\" class=\"padding_top\">\r\n <div class=\"row\">\r\n <div class=\"inside_box padding_left page_title_area\">\r\n <app-breadcrumb></app-breadcrumb>\r\n <!-- <div class=\"page_breadcrum\">\r\n <a [routerLink]=\"[ '/' ]\">Trang chủ</a>\r\n <a class=\"active\">Tin tức nội bộ</a>\r\n </div>\r\n <h1 class=\"t_color_3 page_title\">TIN TỨC NỘI BỘ</h1> -->\r\n <form class=\"search_form\">\r\n <input type=\"text\" class=\"search_input form-control\" name=\"title\" [formControl]=\"titleControl\"\r\n [placeholder]=\"'COMMON.keywords' | translate\">\r\n <img src=\"/assets/images/loupe.svg\">\r\n </form>\r\n\r\n </div>\r\n <div class=\"col-lg-3 brd_right\">\r\n\r\n </div>\r\n <div class=\"col-lg-3 brd_right\">\r\n\r\n </div>\r\n <div class=\"col-lg-3 brd_right \">\r\n\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <div class=\"inside_box\" id=\"new_info\">\r\n <div class=\"title t_bold\">{{'NEWS.internal' | translate}}</div>\r\n <!-- <a [routerLink]=\"['/tin-tuc/noi-bo/the-loai/'+urlPart]\" [routerLinkActive]=\"'active'\"\r\n [routerLinkActiveOptions]=\"{exact:\r\n true}\">\r\n <span class=\"hyphen_start\"></span>\r\n <span>Tất cả tin tức</span>\r\n </a> -->\r\n <a [href]=\"'/tin-tuc/noi-bo'\" [class.active]=\"filter.categoryId==-1||filter.categoryId==null\"> <span\r\n class=\"hyphen_start\"></span>\r\n <span>{{'NEWS.all' | translate}}</span></a>\r\n <a *ngFor=\"let item of dm_category\" [class.hidden]=\"item.id==-1\"\r\n [href]=\"'/tin-tuc/noi-bo?cate='+item.id\"\r\n [class.active]=\"filter.categoryId!=-1&&filter.categoryId==item.id\">\r\n <span class=\"hyphen_start\"></span>\r\n <span>{{item.name}}</span>\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"body\">\r\n <div id=\"filter_area\">\r\n <div id=\"filter_box\" class=\"filter_area brd_top brd_btm\">\r\n <form [formGroup]=\"filterForm\" (ngSubmit)=\"onSave()\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-6 brd_right\">\r\n <div class=\"form-group filter_option padding_right padding_left\">\r\n <div class=\"select_box brd_right brd_left\">\r\n <span class=\"label\">{{'NEWS.filterBy' | translate}}</span>\r\n <mat-form-field appearance=\"none\" floatLabel=\"never\">\r\n\r\n <mat-select [formControl]=\"f.category\" name=\"category\">\r\n <mat-option *ngFor=\"let c of dm_category\" [value]=\"c.id\">\r\n {{c.name}}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-3 row\">\r\n <div class=\"col-lg-6 brd_right\">\r\n <div class=\"form-group filter_option\">\r\n <div class=\"datetime_box\">\r\n <span>{{'COMMON.from' | translate}}</span>\r\n <input [matDatepicker]=\"fromDate\" [formControl]=\"f.fromDate\" matInput readonly />\r\n <mat-datepicker-toggle matSuffix [for]=\"fromDate\"></mat-datepicker-toggle>\r\n <mat-datepicker-toggle matSuffix (click)=\"clearStartDate()\" *ngIf=\"filter.dateFrom\">\r\n <span matDatepickerToggleIcon>X</span>\r\n </mat-datepicker-toggle>\r\n <mat-datepicker #fromDate></mat-datepicker>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-6 brd_right\">\r\n <div class=\"form-group filter_option\">\r\n <div class=\"datetime_box\">\r\n <span>{{'COMMON.to' | translate}}</span>\r\n <input [matDatepicker]=\"toDate\" [formControl]=\"f.toDate\" matInput readonly />\r\n\r\n <mat-datepicker-toggle matSuffix [for]=\"toDate\"></mat-datepicker-toggle>\r\n <mat-datepicker-toggle matSuffix (click)=\"clearEndDate()\" *ngIf=\"filter.dateEnd\">\r\n <span matDatepickerToggleIcon>X</span>\r\n </mat-datepicker-toggle>\r\n <mat-datepicker #toDate></mat-datepicker>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-lg-3\">\r\n <div class=\"form-group filter_option padding_right\">\r\n <button [disabled]=\"disabled\" *ngIf=\"active_type\" (click)=\"changeViewType()\"\r\n id=\"switch_new_type\" type=\"button\" class=\"btn t_size btn_icon\">\r\n <span class=\"t_color_gray t_bold\">{{'COMMON.display' | translate}} <span\r\n class=\"t_color_1\">{{active_type.title}}</span></span>\r\n <img src=\"/assets/images/icons/monitor.png\" class=\"icon\">\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n <div class=\"row grid_lines brd_top\">\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3 brd_right\"></div>\r\n <div class=\"col-lg-3\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"body_section t_size\">\r\n <div id=\"news_area\" class=\"brd_top\" [ngSwitch]=\"active_type.id\" infiniteScroll [infiniteScrollDistance]=\"2\"\r\n [infiniteScrollThrottle]=\"50\" (scrolled)=\"loadMore()\" [infiniteScrollDisabled]=\"disabledScroll\">\r\n <div *ngSwitchCase=\"1\">\r\n <app-list-news-row [news]=\"news\" [root_image]=\"root_image\" [prefix]=\"'/tin-tuc/noi-bo/'\">\r\n </app-list-news-row>\r\n </div>\r\n <div *ngSwitchDefault>\r\n <app-list-news-grid [news]=\"news\" [root_image]=\"root_image\" [prefix]=\"'/tin-tuc/noi-bo/'\">\r\n </app-list-news-grid>\r\n </div>\r\n <div class=\"loading_more brd_btm\" *ngIf=\"loading\">\r\n <img src=\"/assets/images/loading.gif\">\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { Component, Input, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { NewsService } from 'src/app/services/news/news.service';\n\n@Component({\n selector: 'app-new-detail-actions',\n templateUrl: './new-detail-actions.component.html',\n styleUrls: ['./new-detail-actions.component.scss']\n})\nexport class NewDetailActionsComponent implements OnInit {\n currentUrl: string = window.location.href;\n @Input(\"id\") id: number;\n isLike?: boolean;\n constructor(private snackBar: MatSnackBar, private _service: NewsService) { }\n\n ngOnInit(): void {\n this._service.IsLike(this.id).subscribe(res => {\n if (res.status == 1) {\n this.isLike = res.data;\n }\n else this.isLike = false;\n });\n }\n like() {\n this._service.Like(this.id, !this.isLike).subscribe(res => {\n if (res.status == 1) {\n this.isLike = !this.isLike;\n }\n })\n }\n\n copyUrl() {\n this.snackBar.open('Đã sao chép liên kết bài viết hiện tại', null, { duration: 2000 });\n }\n}\n","<div id=\"share_area\" class=\"padding_right brd_top brd_btm\">\n <div class=\"padding_left\">\n\n <div class=\"fb-share-button\" data-size=\"large\" data-lazy=\"true\" [attr.data-href]=\"currentUrl\"\n data-layout=\"button_count\">\n </div>\n <a class=\"btn_like\" *ngIf=\"isLike!=undefined\" [class.liked]=\"isLike==true\" (click)=\"like()\">\n <img src=\"/assets/images/icons/like.svg\">\n <span>Thích bài viết</span>\n </a>\n <a class=\"btn_copy\" [cdkCopyToClipboard]=\"currentUrl\" (click)=\"copyUrl()\">\n <img src=\"/assets/images/icons/copy.png\">\n <span>Sao chép liên kết</span>\n </a>\n </div>\n\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { NewsRoutingModule } from './news-routing.module';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SharedModule } from 'src/app/shared.module';\r\nimport { PublicNewsComponent } from './public-news/public-news.component';\r\nimport { PrivateNewsComponent } from './private-news/private-news.component';\r\nimport { NewDetailComponent } from './public-news/detail/detail.component';\r\nimport { RelatedNewsComponent } from './public-news/detail/related-news/related-news.component';\r\nimport { ListPrivateNewsComponent } from './private-news/list-private-news/list-private-news.component';\r\nimport { ListPublicNewsComponent } from './public-news/list-public-news/list-public-news.component';\r\nimport { ListNewsGridComponent } from './components/list-news-grid/list-news-grid.component';\r\nimport { ListNewsRowComponent } from './components/list-news-row/list-news-row.component';\r\nimport { PrivateNewDetailComponent } from './private-news/private-new-detail/private-new-detail.component';\nimport { ProfessionalNewsComponent } from './professional-news/professional-news.component';\nimport { ListProfessionalNewsComponent } from './professional-news/list-professional-news/list-professional-news.component';\nimport { ProfessionalNewDetailComponent } from './professional-news/professional-new-detail/professional-new-detail.component';\nimport { NewDetailActionsComponent } from './components/new-detail-actions/new-detail-actions.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n NewDetailComponent,\r\n RelatedNewsComponent,\r\n ListPrivateNewsComponent,\r\n ListPublicNewsComponent,\r\n ListNewsGridComponent,\r\n ListNewsRowComponent,\r\n PublicNewsComponent,\r\n PrivateNewsComponent,\r\n PrivateNewDetailComponent,\r\n ProfessionalNewsComponent,\r\n ListProfessionalNewsComponent,\r\n ProfessionalNewDetailComponent,\r\n NewDetailActionsComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n NewsRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SharedModule\r\n ]\r\n})\r\nexport class NewsModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { getImageUploadUrl, UploadUrls } from 'src/app/app.config';\r\nimport { RelatedNewListItem } from 'src/app/services/public-new/public-new.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-related-news',\r\n templateUrl: './related-news.component.html',\r\n styleUrls: ['./related-news.component.scss']\r\n})\r\nexport class RelatedNewsComponent implements OnInit {\r\n @Input('items') items:RelatedNewListItem[];\r\n @Input('data_root') image_data_root:string;\r\n @Input('prefix') prefix:string;\r\n //image_data_root:string=getImageUploadUrl(UploadUrls.PUBLIC_NEW);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div id=\"related_box\" *ngIf=\"items&&items.length>0\">\r\n <h3 class=\"t_color_2\">{{'NEWS.hotnews' |translate}}</h3>\r\n <div>\r\n <a class=\"thumbnail_card t_color_3\" [href]=\"prefix+'/chi-tiet/'+item.id\" *ngFor=\"let item of items\">\r\n <div>\r\n <img [lazyLoad]=\"image_data_root+'/'+item.id+'/'+item.thumbnail\"\r\n [defaultImage]=\"'/assets/images/notfound.jpg'\">\r\n </div>\r\n <div class=\"vertical_middle\">\r\n <div>\r\n <div class=\"title t_bold\">{{item.title}}</div>\r\n <div class=\"author\">\r\n {{item.publishedOnDate|date:'dd/MM/yyyy'}}\r\n </div>\r\n <div class=\"stat\">\r\n <span>\r\n <span><img src=\"/assets/images/icons/view.svg\"></span>\r\n <span>{{item.totalViews}}</span>\r\n </span>\r\n <span class=\"mr_left\">\r\n <span><img src=\"/assets/images/icons/comment.svg\"></span>\r\n <span>{{item.totalComments}}</span>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </a>\r\n </div>\r\n <a *ngIf=\"items?.length>0\" [href]=\"prefix\" class=\"view_all brd_gray t_color_gray\">\r\n {{'COMMON.viewall' |translate}}\r\n </a>\r\n</div>"],"sourceRoot":"webpack:///"}