{"version":3,"file":"src_app_components_buy_details_details_component_ts.8f638a97dcc5d908.js","mappings":"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","names":["i0","keyfeature_r4","HTMLValue","ctx_r11","Model","VehicleModelID_PK","InteriorImages","ctx_r12","ExteriorImages","DetailsAlterComponent_div_4_div_2_app_slider_5_Template","DetailsAlterComponent_div_4_div_2_app_slider_10_Template","ctx_r7","Images","ctx_r8","vehicleFeatures","i_r15","_r17","index","ctx_r16","currentHeading","_c1","ctx_r13","currentIndex","heading_r14","DetailsAlterComponent_div_4_div_4_button_7_Template","ctx_r9","tabsHeadings","tabsList","DetailsAlterComponent_div_4_div_1_Template","DetailsAlterComponent_div_4_div_2_Template","DetailsAlterComponent_div_4_app_dynamicslider_3_Template","DetailsAlterComponent_div_4_div_4_Template","VehicleSpecCategory","tmp_0_0","toLowerCase","includes","ctx_r0","length","tmp_1_0","tmp_2_0","tmp_3_0","_r19","ctx_r18","openBrochure","Brochure","_r21","ctx_r20","Accessories","_r23","ctx_r22","enquire","ctx_r3","imgadd","VehicleSeries","SecondaryImageUrl","DetailsAlterComponent","constructor","changeDetector","siteService","apiservice","route","location","modalService","title","taskservice","router","this","hideColourName","Specs","modelId","type","modelname","imgaeindex","imgloaded","specsOpen","galltype","Stock","href","ref","window","fav","id","favs","JSON","parse","localStorage","getItem","indexOf","splice","push","setItem","stringify","isfav","v","VehicleStockID_PK","VehicleID","url","open","focus","stockenquire","vehicle","ID","SpecialID_PK","Name","WebFriendlyName","ModelYear","ModelDescription","Caption","Dealer","GroupSpecial","DealershipID_FK","Price","NewVehiclePrice","RetailPriceIncl","Type","Source","stockfinance","price","urlsan","replaceAll","loadScripts","detectChanges","dynamicScripts","i","node","document","createElement","src","setAttribute","InstavidSpinID","spin","nativeElement","appendChild","ngOnInit","snapshot","paramMap","get","getSingle","then","x","body","Active","VehicleModelID_FK","specs","VehicleSeriesID_FK","Deleted","LinkedVehicleSpecCategory","OrderBy","PageNumber","PageSize","VehicleSeriesID_PK","features","vehicleSeriesKeyFeatures","sort","a","b","parseInt","split","forEach","element","site","currentSite","setTitle","container","EnquireTitle","layout","filter","s","PageLayoutModuleName","PageLayoutType","find","data","PageLayoutTypeName","gtag","sortAcc","VehicleStockAccessoriesList","gaScript","innerText","CACStockID","CACID","head","num","inp","join","VehicleStockType","back","getCurrentNavigation","previousNavigation","spec","name","VehicleSpecsDefaultName","Value","environment","storageurl","i2","i3","i4","i5","i6","i1","i7","selectors","viewQuery","rf","ctx","DetailsAlterComponent_div_4_Template","DetailsAlterComponent_button_8_Template","DetailsAlterComponent_button_9_Template","DetailsAlterComponent_img_13_Template","DetailsAlterModule","CommonModule","SliderModule","EnquireComponent","DynamicsliderModule","FormsModule","imind_r7","_r9","pgind_r4","imgselect","img_r6","ImglistComponent_div_2_div_1_Template","page_r3","ImglistComponent","indexChange","EventEmitter","Pages","int","emit","inputs","outputs","decls","vars","consts","template","ImglistComponent_div_2_Template","ImglistComponent_a_3_Template","ImglistComponent_a_4_Template","ctx_r1","colours","selected","FileURL","i_r6","_r8","select","_c0","col_r5","HexColour","ctx_r4","Colour","ModelcolourComponent_div_0_div_1_Template","ModelcolourComponent_div_0_div_2_Template","ModelcolourComponent_div_0_div_4_Template","ModelcolourComponent_div_0_h5_6_Template","hideVehicleImage","ModelcolourComponent","apiService","modelid","ModelcolourComponent_div_0_Template","DetailsBaseComponent_div_9_h4_2_span_3_Template","currency","VehicleMakeTypeExcludeVAT","VatExclusive","VehicleType","VehicleMakeID_FK","ctx_r23","$event","_r26","ctx_r25","ctx_r24","DetailsBaseComponent_div_9_div_6_app_slider_1_Template","DetailsBaseComponent_div_9_div_6_app_imglist_2_Template","ctx_r27","vehicleImages","DetailsBaseComponent_div_9_div_7_img_1_Template","DetailsBaseComponent_div_9_h4_12_span_3_Template","monthlyPayment","ctx_r30","ServicePlanPrice","ctx_r31","MaintenancePlanPrice","DetailsBaseComponent_div_9_div_16_span_10_Template","DetailsBaseComponent_div_9_div_16_tr_11_Template","DetailsBaseComponent_div_9_div_16_tr_12_Template","ctx_r33","specNam","ctx_r34","ctx_r35","ctx_r36","DetailsBaseComponent_div_9_div_19_div_47_tr_1_Template","DetailsBaseComponent_div_9_div_19_div_47_tr_2_Template","DetailsBaseComponent_div_9_div_19_div_47_tr_3_Template","DetailsBaseComponent_div_9_div_19_div_47_tr_4_Template","ctx_r32","DetailsBaseComponent_div_9_div_19_div_47_Template","ctx_r14","extraInfo","_r38","ctx_r37","finance","ctx_r17","HideVehicleImage","ctx_r42","ctx_r45","v_r39","DetailsBaseComponent_div_9_div_38_div_1_div_2_img_2_Template","DetailsBaseComponent_div_9_div_38_div_1_div_2_img_3_Template","DetailsBaseComponent_div_9_div_38_div_1_div_2_app_slider_4_Template","_r50","$implicit","ctx_r48","ctx_r51","ctx_r53","ctx_r55","ctx_r43","OdoMeterReading","VehicleTransmission","VehicleFuelType","FuelType","DealershipName","DealershipPhoneNumber","DetailsBaseComponent_div_9_div_38_div_1_div_1_Template","DetailsBaseComponent_div_9_div_38_div_1_div_2_Template","ind_r40","ctx_r41","DetailsBaseComponent_div_9_div_38_div_1_Template","d_r59","DealershipID_PK","Image","DetailsBaseComponent_div_9_h4_2_Template","DetailsBaseComponent_div_9_h4_3_Template","DetailsBaseComponent_div_9_h6_4_Template","DetailsBaseComponent_div_9_div_6_Template","DetailsBaseComponent_div_9_div_7_Template","DetailsBaseComponent_div_9_h4_12_Template","DetailsBaseComponent_div_9_h4_13_Template","DetailsBaseComponent_div_9_h6_14_Template","DetailsBaseComponent_div_9_h6_15_Template","DetailsBaseComponent_div_9_div_16_Template","DetailsBaseComponent_div_9_div_19_Template","_r61","ctx_r60","DetailsBaseComponent_div_9_a_23_Template","DetailsBaseComponent_div_9_a_24_Template","DetailsBaseComponent_div_9_a_25_Template","ctx_r62","compare","ctx_r63","DetailsBaseComponent_div_9_div_35_Template","DetailsBaseComponent_div_9_h5_36_Template","DetailsBaseComponent_div_9_div_38_Template","DetailsBaseComponent_div_9_div_42_Template","Ford","hideFinance","IsNew","Dealerships","ctx_r64","FinanceStockOption","ctx_r65","_r82","ctx_r81","ctx_r66","ctx_r68","InstavidVidURL","_r85","ctx_r84","Loaded360","ctx_r69","_r87","ctx_r86","ctx_r70","_r89","ctx_r88","ctx_r71","ctx_r72","ctx_r73","GoogleRatingReviews","GoogleRatingScore","ctx_r74","ctx_r75","col_r91","DetailsBaseComponent_div_10_div_70_li_13_Template","ctx_r76","DetailsBaseComponent_div_10_button_71_img_3_Template","DetailsBaseComponent_div_10_button_71_img_4_Template","ctx_r77","Policy","DetailsBaseComponent_div_10_div_72_div_2_Template","DetailsBaseComponent_div_10_div_72_div_3_Template","ctx_r78","_r97","ctx_r96","ctx_r80","DetailsBaseComponent_div_10_h6_5_Template","DetailsBaseComponent_div_10_app_slider_7_Template","DetailsBaseComponent_div_10_app_imglist_8_Template","DetailsBaseComponent_div_10_div_9_Template","DetailsBaseComponent_div_10_video_10_Template","DetailsBaseComponent_div_10_button_12_Template","DetailsBaseComponent_div_10_button_13_Template","DetailsBaseComponent_div_10_button_14_Template","DetailsBaseComponent_div_10_img_15_Template","DetailsBaseComponent_div_10_app_reviews_19_Template","DetailsBaseComponent_div_10_h6_29_Template","DetailsBaseComponent_div_10_h6_30_Template","DetailsBaseComponent_div_10_div_70_Template","DetailsBaseComponent_div_10_button_71_Template","DetailsBaseComponent_div_10_div_72_Template","_r99","ctx_r98","DetailsBaseComponent_div_10_a_77_Template","DetailsBaseComponent_div_10_a_78_Template","ctx_r100","ctx_r101","FinanceStockOptionID_FK","VehicleBodyType","FullServiceHistory","layoutFeatures","ctx_r102","ctx_r103","ctx_r104","ctx_r105","ctx_r106","DetailsBaseComponent_div_11_img_2_Template","DetailsBaseComponent_div_11_img_3_Template","DetailsBaseComponent_div_11_h6_7_Template","DetailsBaseComponent_div_11_app_reviews_8_Template","DetailsBaseComponent_div_11_div_9_Template","ctx_r2","_c2","Description","DateEnd","PriceText","_c3","ctx_r107","promo","ImageFilenameXS","ctx_r108","ImageFilenameSM","ctx_r109","ImageFilenameMD","ctx_r110","ImageFilenameLG","ctx_r111","ctx_r112","ctx_r113","ctx_r114","DetailsBaseComponent_div_12_img_2_Template","DetailsBaseComponent_div_12_img_3_Template","DetailsBaseComponent_div_12_img_4_Template","DetailsBaseComponent_div_12_img_5_Template","DetailsBaseComponent_div_12_img_6_Template","DetailsBaseComponent_div_12_h6_8_Template","DetailsBaseComponent_div_12_app_reviews_9_Template","DetailsBaseComponent_div_12_div_10_Template","_r116","ctx_r115","ctx_r117","AdditionalInfo","Reference","SafePipe","sanitizer","transform","bypassSecurityTrustResourceUrl","pure","DetailsBaseComponent","DataSource","vehicleType","vehicleMakeID","some","VehicleTypeName","VehicleMakeID","getVATStatus","SiteID_FK","SiteID_PK","SBVT","obj","VatInclusive","VehicleMakeType","arrPost","BrandID_FK","Promise","all","vals","CurrencySymbol","feature","toUpperCase","dealers","DataSourceID_FK","navUpdate","tempDate","Date","getDate","toLocaleString","month","getFullYear","dealerSite","dealership","SpecialID_FK","SiteSpecialsList","item","URL","y","vp","tm","FinanceMonths","FinanceInterest","balloonAmount","FinanceBalloon","loan","Math","ceil","initfee","FinanceDeposit","pow","adminfee","NamibiaValue","DetailsBaseComponent_div_9_Template","DetailsBaseComponent_div_10_Template","DetailsBaseComponent_div_11_Template","DetailsBaseComponent_div_12_Template","styles","DetailsBaseModule","ReviewsModule","DetailsComponent_ng_container_0_app_detailsBase_1_Template","DetailsComponent_ng_container_0_app_detailsAlter_2_Template","isAlternativeDetails","DetailsComponent","layoutGlobal","DetailsComponent_ng_container_0_Template","undefined","routes","path","component","Module","Title","DetailsModule","RouterModule","forChild"],"sourceRoot":"webpack:///","sources":["./src/app/components/buy/details/detailsAlter/detailsAlter.component.html","./src/app/components/buy/details/detailsAlter/detailsAlter.component.ts","./src/app/components/imglist/imglist.component.html","./src/app/components/imglist/imglist.component.ts","./src/app/components/modelcolour/modelcolour.component.html","./src/app/components/modelcolour/modelcolour.component.ts","./src/app/components/buy/details/detailsBase/detailsBase.component.html","./src/app/components/buy/details/detailsBase/detailsBase.component.ts","./src/app/components/buy/details/details.component.html","./src/app/components/buy/details/details.component.ts"],"sourcesContent":["<div>\n <h1 hidden> {{this.Model.ModelDescription||Model.Caption}}</h1>\n <!-- <div class=\"bottomspacing\">\n <img class=\"w-100\" *ngIf=\"this.VehicleSeries?.BannerFileURL\" src=\"{{imgadd(this.VehicleSeries.BannerFileURL)}}\"/>\n </div> -->\n <div class=\"keyfeaturemain\">\n <div *ngFor=\"let keyfeature of this.vehicleSeriesKeyFeatures; index as keyfeatureindex;\">\n <div *ngIf=\"\n !((keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('feature')) &&\n !((keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('imageviewer')) &&\n !((keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('buttons')) &&\n !((keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('listing')) &&\n !((keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('tabs'))\n \" [innerHtml]=\"keyfeature.HTMLValue\">\n </div>\n <div class=\"col-12 parentdiv col-md-12 bottomspacing\" *ngIf=\"this.InteriorImages?.length > 0 && this.ExteriorImages?.length > 0 && (keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('imageviewer')\">\n <div class=\"col-12 col-sm-6 half-width text-center ImageCarousel\">\n <h3><b>INTERIOR VIEW</b></h3>\n <app-slider [autoScroll]=\"false\" [carouselStyling]=\"'sideBySide'\" [id]=\"'interior'+(this.Model?.VehicleModelID_PK)\" [images]=\"this.InteriorImages\"\n *ngIf=\"this.Images!==null\"></app-slider>\n </div>\n <div class=\"col-12 col-sm-6 half-width text-center ImageCarousel\">\n <h3><b>EXTERIOR VIEW</b></h3>\n <app-slider [autoScroll]=\"false\" [carouselStyling]=\"'sideBySide'\" [id]=\"'exterior'+(this.Model?.VehicleModelID_PK)\" [images]=\"this.ExteriorImages\"\n *ngIf=\"this.Images!==null\"></app-slider>\n </div>\n </div>\n <app-dynamicslider *ngIf=\"(keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('featureshow')\" [features]=\"vehicleFeatures\"></app-dynamicslider> \n <div class=\"overlay-buttons\" *ngIf=\"(keyfeature.VehicleSpecCategory?.toLowerCase())?.includes('tabsshow')\">\n <div class=\"padding-title text-wrap\">\n <h2><strong>STANDARD SPECIFICATIONS</strong></h2>\n </div>\n <div class=\"row col-12 col-md-12 content-block\">\n <div class=\"tab-headings\">\n <button class=\"content-heading\" *ngFor=\"let heading of this.tabsHeadings; index as i\" [ngClass]=\"{'active': currentIndex == i}\" (click)=\"currentHeading(i)\">\n <span [innerHTML]=\"heading.HTMLValue\"></span>\n </button>\n </div>\n <div class=\"tab-content\">\n <span [innerHTML]=\"tabsList[currentIndex].HTMLValue\"></span> \n </div>\n </div>\n </div>\n </div>\n <div class=\"text-center footerbuttongroup\">\n <button class=\"btn-primary marginTopButtons\" (click)=\"enquire()\">Enquiry</button>\n <button class=\"btn-primary\" *ngIf=\"this.Model.Brochure\" (click)=\"openBrochure(this.Model.Brochure)\">Brochure</button>\n <button class=\"btn-primary\" *ngIf=\"this.Model.Accessories\" (click)=\"openBrochure(this.Model.Accessories)\">Spec Sheet</button>\n <button class=\"btn-primary\" (click)=\"back()\">View All Series</button>\n </div>\n <div>\n <img (click)=\"enquire()\" class=\"w-100\" *ngIf=\"this.VehicleSeries?.SecondaryImageUrl\" src=\"{{imgadd(this.VehicleSeries.SecondaryImageUrl)}}\"/>\n </div>\n </div>\n</div>","import {\n ChangeDetectorRef,\n Component,\n NgModule,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { ActivatedRoute, Router, Routes } from '@angular/router';\nimport { GearsApiService } from 'src/app/services/gearsapi.service';\nimport { CommonModule, Location } from '@angular/common';\nimport { ModalService } from 'src/app/modules/modalservice.service';\nimport { SitesService } from 'src/app/services/sites.service';\nimport { environment } from 'src/environments/environment';\n\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer, Title } from '@angular/platform-browser';\nimport { SliderComponent, SliderModule } from '../../../slider/slider.component';\nimport { ImglistComponent } from '../../../imglist/imglist.component';\nimport { EnquireComponent } from '../../../enquire/enquire.component';\nimport { TaskServiceService } from 'src/app/services/task-service.service';\nimport { DynamicsliderModule } from 'src/app/components/dynamicslider/dynamicslider.component';\nimport { FormsModule } from '@angular/forms';\n\n@Pipe({\n name: 'safe',\n})\nexport class SafePipe implements PipeTransform {\n constructor(private sanitizer: DomSanitizer) {}\n transform(url: any) {\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\n }\n}\ndeclare var Spin: any;\n@Component({\n selector: 'app-detailsAlter',\n templateUrl: './detailsAlter.component.html',\n styleUrls: ['./detailsAlter.component.less'],\n})\nexport class DetailsAlterComponent implements OnInit {\n @ViewChild('spin', { static: false }) spin: any;\n hideColourName: boolean = false;\n VehicleSeries: any;\n vehicleSeriesKeyFeatures: any;\n ExteriorImages: any;\n InteriorImages: any;\n currentIndex: number = 0;\n vehicleFeatures: any = [];\n tabsHeadings: any = [];\n tabsList: any = [];\n EnquireTitle: any;\n constructor(\n private changeDetector: ChangeDetectorRef,\n private siteService: SitesService,\n private apiservice: GearsApiService,\n private route: ActivatedRoute,\n private location: Location,\n public modalService: ModalService,\n private title: Title,\n private taskservice: TaskServiceService,\n private router: Router\n ) {}\n Model: any = [];\n Specs: any[] = [];\n Images: any = [];\n modelId: string = '0';\n type: string = '0';\n modelname: string = '0';\n Dealerships: any;\n Dealer: any;\n imgaeindex: number = 0;\n imgloaded: boolean = false;\n specsOpen = false;\n galltype = 0;\n Accessories: any = [];\n currentSite: any;\n Stock: any = [];\n\n href(ref: string) {\n window.location.href = ref;\n }\n fav(id: string, type: string) {\n var favs: any[] = JSON.parse(localStorage.getItem('fav') || '[]');\n if (!favs.includes(type + '-' + id)) {\n favs.push(type + '-' + id);\n } else {\n const index = favs.indexOf(type + '-' + id);\n if (index > -1) {\n favs.splice(index, 1);\n }\n }\n localStorage.setItem('fav', JSON.stringify(favs));\n }\n isfav(v: any, type: string) {\n return JSON.parse(localStorage.getItem('fav') || '[]').includes(\n type + '-' + (v.VehicleStockID_PK || v.VehicleModelID_PK || v.VehicleID)\n );\n }\n openBrochure(url:any){\n window.open(url, \"_blank\")?.focus();\n }\n stockenquire(vehicle: any) {\n var data = {\n ID:\n vehicle.SpecialID_PK ||\n vehicle.VehicleStockID_PK ||\n vehicle.VehicleModelID_PK ||\n vehicle.VehicleID,\n Name: vehicle.WebFriendlyName ? (vehicle.ModelYear + ' ' + vehicle.WebFriendlyName) \n : vehicle.type == 'NewModel' ? vehicle.ModelDescription || vehicle.Caption \n : vehicle.ModelDescription ? (vehicle.ModelYear + ' ' + vehicle.ModelDescription) : vehicle.Caption,\n Dealer: vehicle.GroupSpecial ? null : vehicle.DealershipID_FK,\n Price:\n vehicle.NewVehiclePrice || vehicle.Price || vehicle.RetailPriceIncl,\n Type:\n 'newstock',\n Source: 1,\n };\n this.modalService.open('enquire', data);\n }\n stockfinance(price: number) {\n this.modalService.open('finance', price);\n }\n urlsan(url: any) {\n return url\n .replaceAll('+', '')\n .replaceAll('/', '')\n .replaceAll('\\\\', '')\n .replaceAll('(', '')\n .replaceAll(')', '')\n .replaceAll(' ', '_');\n }\n\n loadScripts() {\n this.changeDetector.detectChanges();\n const dynamicScripts = [\n 'https://static.instavid360.com/p/0.7.latest/spin360.lite.js',\n ];\n for (let i = 0; i < dynamicScripts.length; i++) {\n const node = document.createElement('script');\n node.src = dynamicScripts[i];\n node.setAttribute('data-portal', 'master');\n node.setAttribute('data-spin', this.Model.InstavidSpinID);\n this.spin.nativeElement.appendChild(node);\n }\n }\n\n ngOnInit(): void {\n this.modelId = this.route.snapshot.paramMap.get('id')!;\n this.type = this.route.snapshot.paramMap.get('type')!;\n this.modelname = this.route.snapshot.paramMap.get('name')!;\n if (this.type == 'new') {\n this.apiservice\n .getSingle('VehicleModels', this.modelId, {})\n .then((x: any) => {\n if (x.body.Active) {\n this.Model = x.body;\n this.apiservice\n .get('VehicleModelSpecs', {\n VehicleModelID_FK: this.Model.VehicleModelID_PK,\n })\n .then((specs: any) => {\n this.Specs = specs.body;\n });\n this.apiservice.getSingle('VehicleSeries', this.Model.VehicleSeriesID_FK, {}).then((x:any) => {\n this.VehicleSeries = x.body;\n this.apiservice.get('VehicleSeriesKeyFeatures', {\n Active:1\n ,Deleted:0\n ,LinkedVehicleSpecCategory: 'Key Features Descriptions'\n ,OrderBy: ''\n ,PageNumber:1\n ,PageSize:9999\n ,VehicleSeriesID_FK:this.VehicleSeries.VehicleSeriesID_PK\n }).then((features:any) => {\n this.vehicleSeriesKeyFeatures = features.body.sort((a:any, b:any) => {\n try{\n if (parseInt((a.VehicleSpecCategory).split(' ')[0]) < parseInt((b.VehicleSpecCategory).split(' ')[0])) {\n return -1;\n }\n if (parseInt((a.VehicleSpecCategory).split(' ')[0]) > parseInt((b.VehicleSpecCategory).split(' ')[0])) {\n return 1;\n }\n return 0;\n }\n catch(e){\n if (+(a.VehicleSpecCategory).split(' ')[0] < (b.VehicleSpecCategory).split(' ')[0]) {\n return -1;\n }\n if (+(a.VehicleSpecCategory).split(' ')[0] > (b.VehicleSpecCategory).split(' ')[0]) {\n return 1;\n }\n return 0;\n }\n });;\n this.vehicleSeriesKeyFeatures?.forEach((element:any) => {\n if ((element.VehicleSpecCategory?.toLowerCase())?.includes('feature')) {\n this.vehicleFeatures.push(element);\n }\n if ((element.VehicleSpecCategory?.toLowerCase())?.includes('tabs')) {\n this.tabsHeadings.push(element);\n \n }\n if ((element.VehicleSpecCategory?.toLowerCase())?.includes('listing')) {\n this.tabsList.push(element);\n }\n });\n });\n });\n this.siteService.get().then((site: any) => {\n this.currentSite = site;\n this.title.setTitle(\"New \" + this.Model.ModelDescription + \" | \" + this.currentSite?.container?.Name);\n\n this.EnquireTitle = this.currentSite.layout\n .filter((s:any) =>{if (s.PageLayoutModuleName == 'global')return s.PageLayoutType})[0]?.PageLayoutType\n ?.find((data:any) => data.PageLayoutTypeName == 'enquiretitle');\n\n });\n this.Images = this.Model.Images;\n this.InteriorImages = this.Model.Images?.filter((x:any) => x.includes('interior'));\n this.ExteriorImages = this.Model.Images?.filter((x:any) => (!x.includes('interior')&& !x.includes('main')));\n\n this.gtag('n');\n } else {\n window.location.href = '404';\n }\n });\n }\n }\n\n sortAcc() {\n if (this.Model.VehicleStockAccessoriesList) {\n var i = 0;\n this.Accessories =\n //var vehicleAccessories =\n this.Model.VehicleStockAccessoriesList.split(',');\n /*vehicleAccessories.sort();\n while (vehicleAccessories.length > 0) {\n this.Accessories.push([\n vehicleAccessories.shift(),\n vehicleAccessories.shift(),\n ]);\n i++;\n }*/\n }\n }\n\n gtag(type: any) {\n let gaScript = document.createElement('script');\n gaScript.innerText =\n \"gtag('event','view_item', {'value': \" +\n (this.Model.RetailPriceIncl || this.Model.NewVehiclePrice) +\n \",'items': [{'id': \" +\n type +\n (this.Model.CACStockID || this.Model.CACID) +\n \",'google_business_vertical': 'retail'}]});\";\n\n document.head.appendChild(gaScript);\n }\n num(inp: string) {\n var it = inp;\n return it.split(' ').join(',');\n }\n enquire() {\n var data = {\n ID:\n this.Model.SpecialID_PK ||\n this.Model.VehicleStockID_PK ||\n this.Model.VehicleModelID_PK ||\n this.Model.VehicleID,\n Name: this.EnquireTitle ? this.Model.VehicleSeries : this.Model.WebFriendlyName ? (this.Model.ModelYear + ' ' + this.Model.WebFriendlyName) : this.Model.ModelDescription || this.Model.Caption,\n Dealer: this.Model.GroupSpecial ? null : this.Model.DealershipID_FK,\n Price:\n this.Model.NewVehiclePrice ||\n this.Model.Price ||\n this.Model.RetailPriceIncl,\n Type:\n this.Model.VehicleStockType ? \n this.Model.VehicleStockType == 'New'? 'newstock':this.Model.VehicleStockType == 'Pre-Owned' || this.Model.VehicleStockType == 'Demo' ? \n 'used' \n : this.Model.VehicleModelID_PK ? 'new' : this.Model.VehicleStockType.toLowerCase()\n : this.type == 'special' ? 'specials' : this.type,\n Source: 1,\n };\n this.modalService.open('enquire', data);\n }\n\n\n back(): void {\n if (!!(this.router.getCurrentNavigation()?.previousNavigation)){\n this.location.back();\n }else{\n window.location.href = '/buy';\n }\n }\n\n spec(name: string) {\n var find = this.Specs.find((x: any) => x.VehicleSpecsDefaultName == name);\n if (find) {\n return find.Value;\n } else {\n return '-';\n }\n }\n\n currentHeading(index :any) {\n this.currentIndex = index;\n }\n\n imgadd(url: string) {\n if (!url.includes('http')) {\n return environment.storageurl + url;\n }\n else {\n return url;\n }\n\n }\n}\n\nconst routes: Routes = [\n {\n path: '',\n component: DetailsAlterComponent,\n data: { Module: 'Buy', Title: 'Buy' },\n },\n];\n\n@NgModule({\n declarations: [\n DetailsAlterComponent,\n SafePipe,\n ],\n imports: [\n CommonModule,\n SliderModule,\n EnquireComponent,\n DynamicsliderModule,\n FormsModule\n ],\n exports: [\n DetailsAlterComponent\n ]\n})\nexport class DetailsAlterModule {}\n","<div id=\"sliderImagesCarouselControls\" class=\"carousel slide\">\n <div class=\"carousel-inner\">\n <div class=\"carousel-item\" [ngClass]=\"pgind == 0?'active':''\" *ngFor=\"let page of Pages,let pgind = index\">\n <div class=\"images\" *ngFor=\"let img of page,let imind = index\">\n <img loading=\"lazy\" (click)=\"imgselect(imind+(pgind*5))\" src=\"{{img}}\" alt=\"\" data-bs-target=\"#sliderCarouselControls\" [attr.data-bs-slide-to]=\"imind+(pgind*5)\">\n </div>\n </div>\n <a *ngIf=\"Pages.length>1\" class=\"carousel-control-prev\" href=\"#sliderImagesCarouselControls\" type=\"button\" data-bs-slide=\"prev\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n </a>\n <a *ngIf=\"Pages.length>1\" class=\"carousel-control-next\" href=\"#sliderImagesCarouselControls\" type=\"button\" data-bs-slide=\"next\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\"></span>\n </a>\n</div>\n</div>\n","import { Component, Input,Output,EventEmitter, OnInit } from '@angular/core';\nimport { environment } from 'src/environments/environment';\n\n@Component({\n selector: 'app-imglist',\n templateUrl: './imglist.component.html',\n styleUrls: ['./imglist.component.less']\n})\nexport class ImglistComponent implements OnInit {\n\n @Input() index!: number;\n @Output() indexChange = new EventEmitter<number>();\n\n constructor() { }\n Pages:any = [];\n @Input() Images:any;\n ngOnInit(): void {\n var i = -1;\n this.Images.forEach((x:any,index:number)=>{\n if((index)%5 === 0 || index === 0){\n this.Pages.push([]);\n i++;\n }\n this.Pages[i][index%5] = x.includes('http')?x:environment.storageurl+x;\n \n });\n }\n imgselect(int:number){\n this.index = int;\n this.indexChange.emit(this.index);\n }\n}\n","<div *ngIf=\"colours.length > 0\" class=\"base\">\n <div class=\"\" *ngIf=\"!hideVehicleImage\">\n <img loading=\"lazy\" class=\"sidePadding\" src=\"{{imgadd(colours[selected].FileURL)}}\" alt=\"\">\n </div>\n <div class=\"\" *ngIf=\"hideVehicleImage\">\n <h4>Available in these colours</h4>\n </div>\n <div class=\"cols\">\n <div (click)=\"select(i)\" *ngFor=\"let col of colours; index as i\" class=\"buttonPadding\" [ngClass]=\"selected == i ? 'selectedButton': ''\">\n <div class=\"back\"></div>\n <button [style]=\"{'background-color':col.HexColour}\"></button>\n </div>\n </div>\n <div>\n <h5 *ngIf=\"!hideColourName\">Colour: {{colours[selected].Colour}}</h5>\n </div>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { GearsApiService } from 'src/app/services/gearsapi.service';\nimport { environment } from 'src/environments/environment';\n\n@Component({\n selector: 'app-modelcolour',\n templateUrl: './modelcolour.component.html',\n styleUrls: ['./modelcolour.component.less']\n})\nexport class ModelcolourComponent implements OnInit {\n \n constructor(private apiService:GearsApiService) { }\n\n @Input() modelid:any;\n @Input() hideColourName:any;\n @Input() hideVehicleImage:any;\n colours:any[] = []\n selected:number = 0;\n\n select(num:number){\n this.selected = num;\n }\n imgadd(url: string) {\n if (!url.includes('http')) {\n return environment.storageurl + url;\n }\n else {\n return url;\n }\n\n }\n ngOnInit(): void {\n this.apiService.get('VehicleModelColours',{\n VehicleModelID_FK:this.modelid\n }).then((x:any)=>{\n this.colours=x.body;\n });\n }\n\n}\n","<div>\n <div class=\"back\">\n <a (click)=\"back()\">\n <h6 class=\"desktop700\"><span class=\"icon-back \"></span> {{this.type != 'new' ? this.Model.ModelYear : null}} {{this.Model.WebFriendlyName ? this.Model.WebFriendlyName : this.Model.ModelDescription || this.Model.Caption}}</h6>\n <h5 class=\"mobile700\"><span class=\"icon-back \"></span> {{this.type != 'new' ? this.Model.ModelYear : null}} {{this.Model.WebFriendlyName ? this.Model.WebFriendlyName : this.Model.ModelDescription || this.Model.Caption}}</h5>\n </a>\n </div>\n <div *ngIf=\"this.type == 'new'\" class=\"row details\">\n <div class=\"mobile700 bord pricol\">\n <h4 *ngIf=\"this.Model.NewVehiclePrice\">{{this.currency}}{{this.Model.NewVehiclePrice | number:'1.0-0'}} <span *ngIf=\"VehicleMakeTypeExcludeVAT.length > 0 && VatExclusive(this.Model.VehicleType, this.Model.VehicleMakeID_FK)\" style=\"font-size: 16px;\">Ex VAT</span></h4>\n <h4 *ngIf=\"!this.Model.NewVehiclePrice\">POA</h4>\n <h6 *ngIf=\"Ford\" class=\"ford-credit\">* Subject to Finance from Ford Credit</h6>\n </div>\n <div class=\"carpic col-12 pad\">\n <div *ngIf=\"this.Images !== null && this.Images[0]\">\n <app-slider [activeIndex]=\"imgaeindex\" [autoScroll]=\"false\" [carouselStyling]=\"'custom-control'\" [images]=\"this.Images\"\n *ngIf=\"this.Images!==null\"></app-slider>\n <app-imglist [(index)]=\"imgaeindex\" [Images]=\"this.Images\" *ngIf=\"this.Images.length>0\"></app-imglist>\n </div>\n <div *ngIf=\"this.Images == null || !this.Images[0]\">\n <img class=\"fallbackimg\" loading=\"lazy\" *ngIf=\"this.Images == null\" src=\"{{currentSite.vehicleImages?.Value}}\" alt=\"\">\n </div>\n </div>\n <div class=\"carspecs col-12 pad\">\n\n <h5 class=\"desktop700\">{{this.Model.ModelDescription}}</h5>\n <div class=\"desktop700 row pricing bord\">\n <h4 class=\"\" *ngIf=\"this.Model.NewVehiclePrice\">{{this.currency}}{{this.Model.NewVehiclePrice | number:'1.0-0'}} <span *ngIf=\"VehicleMakeTypeExcludeVAT.length > 0 && VatExclusive(this.Model.VehicleType, this.Model.VehicleMakeID_FK)\" style=\"font-size: 16px;\">Ex VAT</span></h4>\n <h4 *ngIf=\"!this.Model.NewVehiclePrice\">POA</h4>\n\n <h6 *ngIf=\"!hideFinance\" class=\"\">From {{this.currency}}{{monthlyPayment(this.Model.NewVehiclePrice) | number:'1.0-0' }} pm</h6>\n <h6 *ngIf=\"Ford\" class=\"ford-credit\">* Subject to Finance from Ford Credit</h6>\n </div>\n <div class=\"bord\" *ngIf=\"this.extraInfo && (this.Model.ServicePlanPrice != null && this.Model.ServicePlanPrice != 0) && (this.Model.MaintenancePlanPrice != null && this.Model.MaintenancePlanPrice != 0)\">\n <h6>Price Information</h6>\n <div class=\"specs\">\n <tr>\n <td>Retail Price:</td>\n <td class=\"align-right\">{{this.currency}}{{this.Model.NewVehiclePrice | number:'1.0-0'}} <span *ngIf=\"VehicleMakeTypeExcludeVAT.length > 0 && VatExclusive(this.Model.VehicleType, this.Model.VehicleMakeID_FK)\" style=\"font-size: 16px;\">Ex VAT</span></td>\n </tr>\n <tr *ngIf=\"(this.Model.ServicePlanPrice != null && this.Model.ServicePlanPrice != 0)\">\n <td>Service Plan Price: (Optional)</td>\n <td class=\"align-right\">{{this.currency}}{{this.Model.ServicePlanPrice | number:'1.0-0'}}</td>\n </tr>\n <tr *ngIf=\"(this.Model.MaintenancePlanPrice != null && this.Model.MaintenancePlanPrice != 0)\">\n <td>Maintenance Plan Price: (Optional)</td>\n <td class=\"align-right\">{{this.currency}}{{this.Model.MaintenancePlanPrice | number:'1.0-0'}}</td>\n </tr>\n </div>\n </div>\n <h6 class=\"bord\">Vehicle Information</h6>\n\n <div class=\"specs\" *ngIf=\"this.Specs.length>0\" [ngClass]=\"specsOpen?'open':''\">\n <!--<tr *ngFor=\"let spec of this.Specs\">\n <td>{{spec.Name}}</td>\n <td>{{spec.Value}}</td>\n </tr>-->\n\n <tr>\n <td>Acceleration (0-100km/h):</td>\n <td class=\"align-right\">{{spec(\"0-100 (sec)\")}}</td>\n </tr>\n <tr>\n <td>Body Shape:</td>\n <td class=\"align-right\">{{spec(\"Body Shape\")}}</td>\n </tr>\n <tr>\n <td>ECE Emissions:</td>\n <td class=\"align-right\">{{spec(\"Emission Control\")}}</td>\n </tr>\n <tr>\n <td>Fuel Consumption @ 100 (CT):</td>\n <td class=\"align-right\">{{spec(\"City KM/L\")}}</td>\n </tr>\n <tr>\n <td>Fuel Type:</td>\n <td class=\"align-right\">{{spec(\"Fuel Type\")}}</td>\n </tr>\n <tr>\n <td>Gearbox:</td>\n <td class=\"align-right\">{{spec(\"Transmission\")}}</td>\n </tr>\n <tr>\n <td>Service Intervals - Kms:</td>\n <td class=\"align-right\">{{spec(\"Service Intervals - Kms\") | number:'1.0-0'}}</td>\n </tr>\n <tr>\n <td>Warranty - Kms:</td>\n <td class=\"align-right\">{{num(spec(\"Warranty - Kms\"))}}</td>\n </tr>\n <tr>\n <td>Warranty - Years:</td>\n <td class=\"align-right\">{{spec(\"Warranty - Years\")}}</td>\n </tr>\n <div *ngIf=\"this.extraInfo\">\n <tr *ngIf=\"num(specNam('Service Plan - Kms')) != '-'\">\n <td>Service Plan - Kms:</td>\n <td class=\"align-right\">{{num(specNam(\"Service Plan - Kms\"))}}</td>\n </tr>\n <tr *ngIf=\"specNam('Service Plan - Years') != '-'\">\n <td>Service Plan - Years:</td>\n <td class=\"align-right\">{{specNam(\"Service Plan - Years\")}}</td>\n </tr>\n <tr *ngIf=\"num(specNam('Maintenance Plan - Kms')) != '-'\">\n <td>Maintenance Plan - Kms:</td>\n <td class=\"align-right\">{{num(specNam(\"Maintenance Plan - Kms\"))}}</td>\n </tr>\n <tr *ngIf=\"specNam('Maintenance Plan - Years') != '-'\">\n <td>Maintenance Plan - Years:</td>\n <td class=\"align-right\">{{specNam(\"Maintenance Plan - Years\")}}</td>\n </tr>\n </div>\n </div>\n <!--<button class=\"btn-tertiary col-12\" (click)=\"specsOpen=!specsOpen\">More</button>-->\n <button class=\"btn-primary col-12\" (click)=\"enquire()\">Enquire</button>\n <div class=\"row\">\n <a *ngIf=\"!hideFinance\" (click)=\"finance()\" class=\"col-4 icon\"><span class=\"icon-calccircle\"></span>Finance\n Calculator</a>\n <a *ngIf=\"this.Model.Brochure\" href=\"{{this.Model.Brochure}}\" target=\"_blank\" class=\"col-4 icon\"><span\n class=\"icon-brocurecircle\"></span>Brochure</a>\n <a *ngIf=\"this.Model.Accessories && this.Model.IsNew\" href=\"{{this.Model.Accessories}}\" target=\"_blank\" class=\"col-4 icon\"><span\n class=\"icon-accessories-circle\"></span>Accessories</a>\n <a (click)=\"compare()\" class=\"col-4 icon\"><span class=\"icon-scalecircle\"></span>Vehicle\n Comparison</a>\n <a href=\"/pricecompare/{{this.Model.VehicleSeriesID_FK}}\" class=\"col-4 icon\"><span\n class=\"icon-magcircle\"></span>Compare Prices</a>\n\n </div>\n <button class=\"btn-tertiary col-12\" (click)=\"back()\">\n <span class=\"icon-back\"></span> Return to Previous Page</button>\n </div>\n <div class=\"modelcolours\" *ngIf=\"this.Model.VehicleModelID_PK\">\n <app-modelcolour [hideColourName]=\"hideColourName\" [modelid]=\"this.Model.VehicleModelID_PK\" [hideVehicleImage]=\"HideVehicleImage\"></app-modelcolour>\n </div>\n <h5 class=\"stockhead\" *ngIf=\"Stock.length > 0\">There are a number of new listings on the floors of Bidvest McCarthy dealerships</h5>\n \n <div class=\"stock\">\n <div *ngFor=\"let v of Stock, let ind = index\" class=\"col-10 offset-1 offset-md-0 col-md-2\" [ngClass]=\"ind==0?Stock.length==1?'offset-md-5': Stock.length==2?'offset-md-4': Stock.length==3?'offset-md-3': 'offset-md-2':''\">\n <div *ngIf=\"ind <= 3\" class=\"card \">\n <div class=\"allstocklistings\" *ngIf=\"ind == 3 && Stock.length>4\">\n <a href=\"/buy?type=newstock&model={{this.Model.VehicleModelID_PK}}\">\n <h4> View all <br> New Listings <br> available <br> <span class=\"icon-back\"></span> </h4>\n </a>\n </div>\n <div *ngIf=\"ind < 3 || Stock.length == 4\">\n <a class=\"image card-img-top\"\n\n href=\"buy/stock/{{v.VehicleStockID_PK||v.VehicleID}}/{{urlsan(v.WebFriendlyName||v.ModelDescription)}}\">\n\n <img *ngIf=\"v.InstavidSpinID\" class=\"instavidimg\" src=\"assets/360img.png\" alt=\"\"/>\n <img loading=\"lazy\" *ngIf=\"v.Images == null || !v.Images[0]\" src=\"{{currentSite.vehicleImages?.Value}}\" alt=\"\">\n\n <app-slider [id]=\"'stock'+(v.VehicleStockID_PK||v.VehicleID)\" [activeIndex]=\"0\"\n [autoScroll]=\"false\" [images]=\"v.Images\" [carouselStyling]=\"'custom-control'\" *ngIf=\"v.Images!==null\"></app-slider>\n </a>\n <div class=\"card-body\">\n <div class=\"bodyblock\">\n <div class=\"row name\">\n <h6>{{v.ModelYear}} {{v.WebFriendlyName||v.ModelDescription}}</h6><button\n [ngClass]=\"isfav(v,'stock')?'selected':''\"\n (click)=\"fav(v.VehicleStockID_PK||v.VehicleID,'stock')\"><span\n class=\"icon-favourite\"></span></button>\n </div>\n <div class=\"row pricerow\">\n <h5 class=\"col-6\">{{this.currency}}{{v.RetailPriceIncl||v.Price | number:'1.0-0'}}</h5>\n <a class=\"col-6\" (click)=\"stockfinance(v.RetailPriceIncl||v.Price)\">\n <p>From {{this.currency}}{{monthlyPayment(v.RetailPriceIncl||v.Price)| number:'1.0-0'}} pm</p>\n </a>\n </div>\n <p class=\"details\">{{v.OdoMeterReading| number:'1.0-0'}}kms | {{v.VehicleTransmission}}\n | {{v.VehicleFuelType||v.FuelType}} | {{v.VehicleStockType||v.Type}} </p>\n <p class=\"dealerdetails\">{{v.DealershipName}} </p>\n </div>\n </div>\n <div class=\"card-footer\">\n <div class=\"row\">\n <div class=\"col-xs-10 col-xs-offset-1\">\n <button class=\"col-4 btn-tertiary marginSides\"\n (click)=\"href('buy/'+(((v.VehicleStockType||v.Type) == 'Pre-Owned' || (v.VehicleStockType||v.Type) == 'Demo' || (v.VehicleStockType||v.Type) == 'New')?'stock':(v.VehicleStockType.toLowerCase( )||v.Type.toLowerCase( )))+'/'+(v.VehicleStockID_PK||v.VehicleID)+'/'+urlsan((v.WebFriendlyName||v.ModelDescription)))\"><span\n class=\"icon-info\"></span> Info</button>\n <button (click)=\"stockenquire(v)\" class=\"col-4 btn-primary marginSides\">Enquire</button>\n <a class=\"call\" href=\"tel:{{v.DealershipPhoneNumber}}\"><span\n class=\"icon-phone\"></span></a>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row dealers col-10 offset-1\">\n <h4>Available at these {{currentSite?.container?.Name}} Dealerships</h4>\n\n <div class=\"col-sm-2_4 col-6 item\" *ngFor=\"let d of Dealerships\">\n <a href=\"dealership/{{d.DealershipID_PK}}\">\n <div class=\"dealerimg\">\n <img loading=\"lazy\" class=\"\" src=\"{{d.Image}}\" alt=\"\">\n </div>\n <h6>{{d.Name}}</h6>\n </a>\n </div>\n </div>\n </div>\n <div *ngIf=\"this.type == 'stock'\" class=\"row details\">\n <div class=\"mobile700 bord pricol\">\n <h4>{{this.currency}}{{this.Model.RetailPriceIncl | number:'1.0-0'}}</h4>\n <h6 *ngIf=\"Model.FinanceStockOptionID_FK\" class=\"ford-credit\">* {{this.Model.FinanceStockOption}}</h6>\n </div>\n <div class=\"carpic col-12 pad\">\n <app-slider [activeIndex]=\"imgaeindex\" [autoScroll]=\"false\" [carouselStyling]=\"'custom-control'\" [images]=\"this.Images\"\n *ngIf=\"this.Images !== null && this.Images[0] && galltype == 0\"></app-slider>\n <app-imglist [(index)]=\"imgaeindex\" [Images]=\"this.Images\"\n *ngIf=\"this.Images.length>0 && galltype == 0\"></app-imglist>\n <div *ngIf=\"galltype == 1\" #spin></div>\n <video *ngIf=\"galltype == 2\" controls=\"\" autoplay=\"\" name=\"media\">\n <source [src]=\"this.Model.InstavidVidURL|safe\" type=\"video/mp4\">\n </video>\n\n\n <div class=\"row gallerybuttons\">\n <button (click)=\"this.galltype = 0; this.Loaded360 = false\"\n [ngClass]=\"this.Model.InstavidSpinID && this.Model.InstavidVidURL?'gall3':'gall2'\"\n *ngIf=\"this.Model.InstavidSpinID || this.Model.InstavidVidURL\" class=\"btn-primary\">Gallery</button>\n <button (click)=\"this.galltype = 1; loadScripts();\"\n [ngClass]=\"this.Model.InstavidSpinID && this.Model.InstavidVidURL?'gall3':'gall2'\"\n *ngIf=\"this.Model.InstavidSpinID\" class=\"btn-primary\">360</button>\n <button (click)=\"this.galltype = 2; this.Loaded360 = false\"\n [ngClass]=\"this.Model.InstavidSpinID && this.Model.InstavidVidURL?'gall3':'gall2'\"\n *ngIf=\"this.Model.InstavidVidURL\" class=\"btn-primary\">Video</button>\n </div>\n <img class=\"fallbackimg\" loading=\"lazy\" *ngIf=\"this.Images == null || !this.Images[0]\" src=\"{{currentSite.vehicleImages?.Value}}\" alt=\"\">\n </div>\n <div class=\"carspecs col-12 pad\">\n <h6>{{this.Model.DealershipName}}</h6>\n <app-reviews *ngIf=\"Dealer\" [reviewnumber]=\"Dealer.GoogleRatingReviews\"\n [reviewscore]=\"Dealer.GoogleRatingScore\"></app-reviews>\n <div class=\"text-center callbutt\"><a class=\"call col-1\"\n href=\"tel:{{this.Model.DealershipPhoneNumber}}\"><span class=\"icon-phone\"></span></a></div>\n <h5 class=\"bbord desktop700\">{{this.Model.ModelYear}} {{this.Model.WebFriendlyName}}</h5>\n <div class=\"row desktop700 pricing\">\n <h4 class=\"\">{{this.currency}}{{this.Model.RetailPriceIncl | number:'1.0-0'}}</h4>\n <h6 *ngIf=\"!hideFinance\" class=\"\">From {{this.currency}}{{monthlyPayment(this.Model.RetailPriceIncl) | number:'1.0-0' }} pm</h6>\n <h6 *ngIf=\"Model.FinanceStockOptionID_FK\" class=\"ford-credit\">* {{this.Model.FinanceStockOption}}</h6>\n </div>\n\n <div id=\"accordionInfo\">\n <div>\n\n <button class=\"accordion-button bord\" type=\"button\" data-bs-toggle=\"collapse\"\n data-bs-target=\"#collapseInformation\" aria-expanded=\"true\" aria-controls=\"collapseOne\">\n <h6 class=\"spacer\"></h6>\n <h6 class=\"accordion-header \" id=\"headingInformation\">\n Vehicle Information\n </h6>\n <h6 class=\"accordion-header plus closed\">+</h6>\n <h6 class=\"accordion-header plus open\">-</h6>\n </button>\n </div>\n\n <div id=\"collapseInformation\" class=\"accordion-collapse collapse show\"\n aria-labelledby=\"headingInformation\" data-bs-parent=\"#accordionInfo\">\n <div class=\"accordion-body\">\n\n <div class=\"vehicledetails\">\n <tr>\n <td>Kilometres</td>\n <td>{{this.Model.OdoMeterReading| number:'1.0-0'}} kms</td>\n </tr>\n <tr>\n <td>Body Shape</td>\n <td>{{this.Model.VehicleBodyType}}</td>\n </tr>\n <tr>\n <td>Fuel Type</td>\n <td>{{this.Model.VehicleFuelType}}</td>\n </tr>\n <tr>\n <td>Transmission</td>\n <td>{{this.Model.VehicleTransmission}}</td>\n </tr>\n <tr>\n <td>Full Service History</td>\n <td>{{this.Model.FullServiceHistory?'Yes':'No'}}</td>\n </tr>\n </div>\n </div>\n </div>\n <div *ngIf=\"Accessories.length>0\" class=\"accordion-item vehiclefeatures\">\n\n\n <div>\n\n <button class=\"accordion-button collapsed bord\" type=\"button\" data-bs-toggle=\"collapse\"\n data-bs-target=\"#collapseFeatures\" aria-expan ded=\"false\" aria-controls=\"collapseOne\">\n <h6 class=\"spacer\"></h6>\n <h6 class=\"accordion-header \" id=\"headingFeatures\">\n Vehicle Features\n </h6>\n <h6 class=\"accordion-header plus closed\">+</h6>\n <h6 class=\"accordion-header plus open\">-</h6>\n </button>\n </div>\n\n <div id=\"collapseFeatures\" class=\"accordion-collapse collapse\" aria-labelledby=\"headingFeatures\"\n data-bs-parent=\"#accordionInfo\">\n <div class=\"accordion-body\">\n <ul>\n \n <li *ngFor=\"let col of Accessories\">{{col}}</li>\n \n </ul>\n </div>\n </div>\n </div>\n <button *ngIf=\"currentSite?.layoutFeatures.includes('isAutomark')\" class=\"accordion-button collapsed bord\" type=\"button\" data-bs-toggle=\"collapse\"\n data-bs-target=\"#collapseSpecialType\" aria-expanded=\"false\" aria-controls=\"collapseOne\">\n <h6 class=\"spacer\"></h6>\n <div class=\"imgs\">\n <img *ngIf=\"Model.Policy == 'TWA1'\" src=\"assets/toyotacert.png\" alt=\"\">\n <img *ngIf=\"Model.Policy !== 'TWA1'\" src=\"assets/autocert.png\" alt=\"\">\n </div>\n <h6 class=\"accordion-header plus closed\">+</h6>\n <h6 class=\"accordion-header plus open\">-</h6>\n </button>\n <div *ngIf=\"currentSite?.layoutFeatures.includes('isAutomark')\" id=\"collapseSpecialType\" class=\"accordion-collapse collapse\" aria-labelledby=\"headingSpecialType\"\n data-bs-parent=\"#accordionInfo\">\n <div class=\"accordion-body\">\n <div *ngIf=\"Model.Policy == 'TWA1'\" class=\"toyota certified\">\n\n\n <div><span class=\"icon-toyotalogo\"></span>\n <p>All Toyota Models up to 4 years</p>\n </div>\n <div><span class=\"icon-steeringwheel\"></span>\n <p>Less than 100 000 Kms</p>\n </div>\n <div><span class=\"icon-shield\"></span>\n <p>Complementary 1-year/50 000 kms Warranty</p>\n </div>\n\n </div>\n <div *ngIf=\"Model.Policy !== 'TWA1'\" class=\"certified\">\n\n <div><span class=\"icon-toyotalogo\"></span>\n <p>All Toyota Models older than 4 years and Non-Toyota Models</p>\n </div>\n <div><span class=\"icon-steeringwheel\"></span>\n <p>No Restrictions on Kms</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- <tr>\n <td>Body Type</td>\n <td>{{this.Model.VehicleBodyType}}</td>\n </tr>\n <tr>\n <td>Fuel Type</td>\n <td>{{this.Model.VehicleFuelType}}</td>\n </tr>\n <tr>\n <td>Transmission</td>\n <td>{{this.Model.VehicleTransmission}}</td>\n </tr>-->\n <div class=\"row\"><button class=\"btn-primary col-12\" (click)=\"enquire()\">Enquire</button></div>\n <div class=\"row\">\n <a *ngIf=\"!hideFinance\" (click)=\"finance()\" class=\"col-4 icon\"><span class=\"icon-calccircle\"></span>Finance\n Calculator</a>\n <a *ngIf=\"this.Model.Accessories && this.Model.IsNew\" href=\"{{this.Model.Accessories}}\" target=\"_blank\" class=\"col-4 icon\"><span\n class=\"icon-accessories-circle\"></span>Accessories</a>\n <a (click)=\"compare()\" class=\"col-4 icon\"><span class=\"icon-scalecircle\"></span>Vehicle\n Comparison</a>\n </div>\n\n <button class=\"btn-tertiary col-12\" (click)=\"back()\">\n <span class=\"icon-back\"></span> Return to Previous Page</button>\n </div>\n </div>\n <div *ngIf=\"this.type == 'special'\" [ngStyle]=\"!imgloaded?{'display':'none'}:{}\" class=\"row details special\">\n\n <div class=\"carpic col-12 pad\">\n <img loading=\"lazy\" *ngIf=\"this.Model.Image\" src=\"{{this.Model.Image}}\">\n <img class=\"fallbackimg\" loading=\"lazy\" *ngIf=\"!this.Model.Image\" src=\"{{currentSite.vehicleImages?.Value}}\" alt=\"\">\n </div>\n <div class=\"carspecs col-12 pad\">\n <div class=\"align-call\">\n <div class=\"col-12\">\n <h6 *ngIf=\"this.Dealer\">{{this.Dealer.Name}}</h6>\n <app-reviews *ngIf=\"Dealer\" [reviewnumber]=\"Dealer.GoogleRatingReviews\"\n [reviewscore]=\"Dealer.GoogleRatingScore\"></app-reviews></div>\n <div *ngIf=\"this.Dealer\" class=\"text-center callbutt\"><a class=\"call col-1\"\n href=\"tel:{{this.Model.DealershipPhoneNumber}}\"><span class=\"icon-phone\"></span></a></div>\n </div>\n <h4 class=\"desktop700\">{{this.Model.Caption}}</h4>\n <p class=\"bbord desctcs\">{{this.Model.Description}} \n <br/> Offer valid until {{this.Model.DateEnd}}\n <br> Terms and Conditions apply</p>\n <div class=\"row\">\n <h4 class=\"col-12 specialprice\">{{this.Model.PriceText}}</h4>\n \n </div>\n\n <app-enquire [Data]=\"{Name:this.modelname, Type:'specials', ID:this.modelId, Dealer:null}\"></app-enquire>\n \n\n <!-- <div class=\"row\"><button class=\"specialbutton btn-primary col-12\" (click)=\"enquire()\">Enquire</button></div>\n\n -->\n\n <!--<button class=\"btn-tertiary col-12\" (click)=\"back()\">\n <span class=\"icon-back\"></span> Return to Previous Page</button>-->\n\n </div>\n </div>\n <div *ngIf=\"this.type == 'promo'\" [ngStyle]=\"!imgloaded?{'display':'none'}:{}\" class=\"row details promo\">\n\n <div class=\"promoimg col-12\">\n <img loading=\"lazy\" class=\"d-sm-none\" *ngIf=\"this.Model.promo.ImageFilenameXS\" src=\"{{this.Model.promo.ImageFilenameXS}}\">\n <img loading=\"lazy\" class=\"d-none d-sm-block d-md-none\" *ngIf=\"this.Model.promo.ImageFilenameSM\" src=\"{{this.Model.promo.ImageFilenameSM}}\">\n <img loading=\"lazy\" class=\"d-none d-md-block d-lg-none\" *ngIf=\"this.Model.promo.ImageFilenameMD\" src=\"{{this.Model.promo.ImageFilenameMD}}\">\n <img loading=\"lazy\" class=\"d-none d-lg-block\" *ngIf=\"this.Model.promo.ImageFilenameLG\" src=\"{{this.Model.promo.ImageFilenameLG}}\">\n\n <img class=\"fallbackimg\" loading=\"lazy\" *ngIf=\"!this.Model.promo.ImageFilenameLG\" src=\"{{currentSite.vehicleImages?.Value}}\" alt=\"\">\n </div>\n <div class=\"promopecs col-12 pad\">\n <h6 *ngIf=\"this.Dealer\">{{this.Dealer.Name}}</h6>\n <app-reviews *ngIf=\"Dealer\" [reviewnumber]=\"Dealer.GoogleRatingReviews\"\n [reviewscore]=\"Dealer.GoogleRatingScore\"></app-reviews>\n <div *ngIf=\"this.Dealer\" class=\"text-center callbutt\"><a class=\"call col-1\"\n href=\"tel:{{this.Model.DealershipPhoneNumber}}\"><span class=\"icon-phone\"></span></a></div>\n <h4 class=\"\">{{this.Model.promo.AdditionalInfo}}</h4>\n <p class=\"bbord desctcs\">Ref: {{this.Model.promo.Reference}}</p>\n <div class=\"row\">\n <h4 class=\"col-12 specialprice\">{{this.Model.PriceText}}</h4>\n </div>\n\n\n\n <div class=\"row\"><button class=\"specialbutton btn-primary col-12\" (click)=\"enquire()\">Enquire</button></div>\n\n\n\n <button class=\"btn-tertiary col-12\" (click)=\"back()\">\n <span class=\"icon-back\"></span> Return to Previous Page</button>\n\n </div>\n </div>\n</div>","import {\n ChangeDetectorRef,\n Component,\n NgModule,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { ActivatedRoute, RouterModule, Routes } from '@angular/router';\nimport { GearsApiService } from 'src/app/services/gearsapi.service';\nimport { CommonModule, Location } from '@angular/common';\nimport { ModalService } from 'src/app/modules/modalservice.service';\nimport { SitesService } from 'src/app/services/sites.service';\nimport { environment } from 'src/environments/environment';\n\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer, Title } from '@angular/platform-browser';\nimport { SliderComponent, SliderModule } from '../../../slider/slider.component';\nimport { ImglistComponent } from '../../../imglist/imglist.component';\nimport { ModelcolourComponent } from '../../../modelcolour/modelcolour.component';\nimport {\n ReviewsComponent,\n ReviewsModule,\n} from '../../../reviews/reviews.component';\nimport { EnquireComponent } from '../../../enquire/enquire.component';\nimport { TaskServiceService } from 'src/app/services/task-service.service';\n\n@Pipe({\n name: 'safe',\n})\nexport class SafePipe implements PipeTransform {\n constructor(private sanitizer: DomSanitizer) {}\n transform(url: any) {\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\n }\n}\ndeclare var Spin: any;\n@Component({\n selector: 'app-detailsBase',\n templateUrl: './detailsBase.component.html',\n styleUrls: ['./detailsBase.component.less'],\n})\nexport class DetailsBaseComponent implements OnInit {\n @ViewChild('spin', { static: false }) spin: any;\n hideColourName: boolean = false;\n hideFinance: any;\n currency: any;\n extraInfo: any;\n HideVehicleImage: any;\n constructor(\n private changeDetector: ChangeDetectorRef,\n private siteService: SitesService,\n private apiservice: GearsApiService,\n private route: ActivatedRoute,\n private location: Location,\n public modalService: ModalService,\n private title: Title,\n private taskservice: TaskServiceService\n ) {}\n Model: any = [];\n Specs: any[] = [];\n Images: any = [];\n modelId: string = '0';\n type: string = '0';\n modelname: string = '0';\n Dealerships: any;\n Dealer: any;\n imgaeindex: number = 0;\n imgloaded: boolean = false;\n specsOpen = false;\n galltype = 0;\n Ford: any;\n Accessories: any = [];\n currentSite: any;\n Stock: any = [];\n Loaded360: boolean = false;\n DataSource: any;\n\n href(ref: string) {\n window.location.href = ref;\n }\n fav(id: string, type: string) {\n var favs: any[] = JSON.parse(localStorage.getItem('fav') || '[]');\n if (!favs.includes(type + '-' + id)) {\n favs.push(type + '-' + id);\n } else {\n const index = favs.indexOf(type + '-' + id);\n if (index > -1) {\n favs.splice(index, 1);\n }\n }\n localStorage.setItem('fav', JSON.stringify(favs));\n }\n isfav(v: any, type: string) {\n return JSON.parse(localStorage.getItem('fav') || '[]').includes(\n type + '-' + (v.VehicleStockID_PK || v.VehicleModelID_PK || v.VehicleID)\n );\n }\n stockenquire(vehicle: any) {\n var data = {\n ID:\n vehicle.SpecialID_PK ||\n vehicle.VehicleStockID_PK ||\n vehicle.VehicleModelID_PK ||\n vehicle.VehicleID,\n Name: vehicle.WebFriendlyName ? (vehicle.ModelYear + ' ' + vehicle.WebFriendlyName) \n : vehicle.type == 'NewModel' ? vehicle.ModelDescription || vehicle.Caption \n : vehicle.ModelDescription ? (vehicle.ModelYear + ' ' + vehicle.ModelDescription) : vehicle.Caption,\n Dealer: vehicle.GroupSpecial ? null : vehicle.DealershipID_FK,\n Price:\n vehicle.NewVehiclePrice || vehicle.Price || vehicle.RetailPriceIncl,\n Type:\n 'newstock',\n Source: this.DataSource,\n };\n this.modalService.open('enquire', data);\n }\n stockfinance(price: number) {\n this.modalService.open('finance', price);\n }\n urlsan(url: any) {\n return url\n .replaceAll('+', '')\n .replaceAll('/', '')\n .replaceAll('\\\\', '')\n .replaceAll('(', '')\n .replaceAll(')', '')\n .replaceAll(' ', '_');\n }\n\n loadScripts() {\n if (!this.Loaded360) {\n this.Loaded360 = true;\n this.changeDetector.detectChanges();\n const dynamicScripts = [\n 'https://static.instavid360.com/p/0.7.latest/spin360.lite.js',\n ];\n for (let i = 0; i < dynamicScripts.length; i++) {\n const node = document.createElement('script');\n node.src = dynamicScripts[i];\n node.setAttribute('data-portal', 'master');\n node.setAttribute('data-spin', this.Model.InstavidSpinID);\n this.spin.nativeElement.appendChild(node);\n }\n } \n }\n\n VehicleMakeTypeExcludeVAT:any = [];\n VatExclusive(vehicleType:any, vehicleMakeID:any){\n return this.VehicleMakeTypeExcludeVAT.some((x:any)=> x.VehicleTypeName == vehicleType && x.VehicleMakeID == vehicleMakeID);\n }\n getVATStatus(){\n // if (this.Site.layoutFeatures.includes('vatexclusivelabel')){\n this.apiservice.get('SiteBrandVehicleTypes',{\n OrderBy:'Name.ASC',\n PageNumber:1,\n PageSize:9999,\n SiteID_FK:this.currentSite.SiteID_PK,\n Active:true,\n Deleted:false\n }).then((x:any)=>{\n let SBVT = x.body;\n SBVT = SBVT.filter((obj:any)=> obj.VatInclusive == false);\n let VehicleMakeType:any = [];\n const arrPost = []\n for (let i = 0; i<SBVT.length; i++) {\n VehicleMakeType.push(SBVT[i]);\n arrPost.push(this.apiservice.get('BrandVehicleMakes',\n {\n BrandID_FK:SBVT[i].BrandID_FK,\n Active:true,\n Deleted:false,\n PageNumber:1,\n PageSize:9999,\n OrderBy: ''\n }\n ));\n }\n Promise.all(arrPost).then((vals:any)=>{\n for (let i = 0; i<vals.length; i++) {\n VehicleMakeType[i].VehicleMakeID = vals[i].body[0].VehicleMakeID_FK;\n }\n this.VehicleMakeTypeExcludeVAT= VehicleMakeType;\n })\n });\n // }\n }\n\n ngOnInit(): void {\n this.modelId = this.route.snapshot.paramMap.get('id')!;\n this.type = this.route.snapshot.paramMap.get('type')!;\n this.modelname = this.route.snapshot.paramMap.get('name')!;\n if (this.type == 'new') {\n this.apiservice\n .getSingle('VehicleModels', this.modelId, {})\n .then((x: any) => {\n if (x.body.Active) {\n this.Model = x.body;\n this.apiservice\n .get('VehicleModelSpecs', {\n VehicleModelID_FK: this.Model.VehicleModelID_PK,\n })\n .then((specs: any) => {\n this.Specs = specs.body;\n });\n \n this.siteService.get().then((site: any) => {\n this.currentSite = site;\n this.currency = this.currentSite.CurrencySymbol;\n this.getVATStatus();\n this.hideFinance = this.currentSite.layout\n .filter((s:any) =>{if (s.PageLayoutModuleName == 'global')return s.PageLayoutType})[0]?.PageLayoutType\n ?.find((data:any) => data.PageLayoutTypeName == 'hidefinance');\n\n this.title.setTitle(\"New \" + this.Model.ModelDescription + \" | \" + this.currentSite?.container?.Name);\n this.hideColourName = (this.currentSite.layout\n .filter((s:any) =>{if (s.PageLayoutModuleName == 'features')return s.PageLayoutType}))[0].PageLayoutType\n .find((data:any) => data.PageLayoutTypeName == 'HideColourName') ? true : false;\n\n this.extraInfo = this.currentSite.layout\n .filter((s:any) =>{if (s.PageLayoutModuleName == 'features')return s.PageLayoutType})[0]?.PageLayoutType\n ?.find((data:any) => data.PageLayoutTypeName == 'extravehicleinformation');\n\n this.HideVehicleImage = this.currentSite.layoutFeatures.some((feature: any) => feature.toUpperCase() == 'HIDESWATCHVEHICLEIMAGE');\n \n this.apiservice\n .get('VehicleStock', {\n VehicleStockType: 'NEW',\n PageSize: 5,\n PageNumber: 1,\n OrderBy: '',\n VehicleModelID_FK: this.Model.VehicleModelID_PK,\n SiteID_FK:site.SiteID_PK\n })\n .then((specs: any) => {\n this.Stock = specs.body;\n\n this.Ford = this.currentSite.layout\n .filter((s:any) =>{if (s.PageLayoutModuleName == 'global')return s.PageLayoutType})[0]?.PageLayoutType\n ?.find((data:any) => data.PageLayoutTypeName == 'credit');\n });\n this.apiservice\n .get('Dealerships', { SiteID_FK: site.SiteID_PK })\n .then((dealers: any) => {\n this.Dealerships = dealers.body;\n this.DataSource = dealers.body[0].DataSourceID_FK;\n });\n });\n this.Images = this.Model.Images;\n\n this.gtag('n');\n } else {\n window.location.href = '404';\n }\n });\n }\n if (this.type == 'stock') {\n this.siteService.get().then((site: any) => {\n this.currentSite = site;\n this.currency = this.currentSite.CurrencySymbol;\n this.apiservice\n .getSingle('VehicleStock', this.modelId, {})\n .then((x: any) => {\n\n if (x.body.Active) {\n this.Model = x.body;\n if (this.Model.VehicleStockType.toLowerCase() == \"new\") {\n this.taskservice.navUpdate(\"new\");\n }\n else if (this.Model.VehicleStockType.toLowerCase() == \"demo\") {\n this.taskservice.navUpdate(\"demo\");\n }\n else {\n this.taskservice.navUpdate(\"used\");\n }\n this.title.setTitle(this.Model.VehicleStockType.toUpperCase() + \" \" + this.Model.ModelYear + \" \" + this.Model.WebFriendlyName + \" | \" + this.currentSite.container.Name);\n this.sortAcc();\n this.Images = this.Model.Images;\n this.imgloaded = true;\n\n this.gtag('u');\n if (this.Model.DealershipID_FK != null) {\n this.apiservice\n .getSingle('Dealerships', this.Model.DealershipID_FK, {})\n\n .then((x: any) => {\n\n this.Dealer = x.body;\n this.DataSource = x.body.DataSourceID_FK;\n });\n }\n } else {\n window.location.href = '404';\n }\n });\n });\n }\n if (this.type == 'special') {\n this.apiservice\n .getSingle('Specials', this.modelId, {})\n\n .then((x: any) => {\n if (x.body.Active) {\n this.Model = x.body;\n\n this.title.setTitle(this.Model.Caption);\n this.Model.Description = this.Model.Description?.replaceAll(\n 'Terms and Conditions apply',\n ''\n );\n var tempDate = new Date(this.Model.DateEnd);\n this.Model.DateEnd = tempDate.getDate() +' '+ tempDate.toLocaleString('en-GB', { month: 'short' })\n +' '+ tempDate.getFullYear();\n this.Images.push(this.Model.Image);\n this.imgloaded = true;\n \n this.siteService.get().then((site: any) => {\n if(site.dealerSite){\n this.Dealerships = [];\n this.Dealer = site.dealership;\n }\n else{\n this.apiservice.get('SiteSpecials', {\n PageNumber: 1,\n PageSize: 9999,\n OrderBy: 'Order.ASC',\n Deleted: 0,\n Active: 1,\n SpecialID_FK: this.modelId,\n //DateEnd: moment().startOf('day').add(2, 'hours').format('YYYY-MM-DD'),\n //SiteID_FK: site.SiteID_PK\n }).then((x: any) => {\n var SiteSpecialsList = x.body;\n\n this.Dealerships = [];\n \n SiteSpecialsList.forEach((item: any) => {\n if (item?.DealershipID_FK !== null) {\n if (!this.Dealerships.includes(item?.DealershipID_FK)) {\n this.Dealerships.push(item.DealershipID_FK);\n }\n }\n else{\n this.Dealerships.push(-1);\n this.Dealerships.push(-1);\n }\n });\n\n if(this.Dealerships.length == 1){\n this.apiservice.getSingle(\"Dealerships\", this.Dealerships[0]).then((x: any) => {this.Dealer = x.body});\n }\n\n });}\n });\n } else {\n window.location.href = '404';\n }\n });\n }\n if (this.type == 'promo') {\n this.siteService.get().then((site: any) => {\n this.apiservice\n .get('promos', {\n Active: 1,\n Deleted: 0,\n OrderBy: '',\n PageNumber: 1,\n PageSize: 1,\n SiteID_FK: site.SiteID_PK,\n URL: this.modelId,\n })\n .then((y: any) => {\n if (y.body.length > 0) {\n this.apiservice\n .getSingle('Specials', y.body[0].SpecialID_FK, {})\n\n .then((x: any) => {\n\n if (x.body.Active) {\n this.Model = x.body;\n this.Model.promo = y.body[0];\n if (this.Model.promo?.ImageFilenameXS)this.Model.promo.ImageFilenameXS = environment.storageurl + this.Model.promo?.ImageFilenameXS;\n if (this.Model.promo?.ImageFilenameSM)this.Model.promo.ImageFilenameSM = environment.storageurl + this.Model.promo?.ImageFilenameSM;\n if (this.Model.promo?.ImageFilenameMD)this.Model.promo.ImageFilenameMD = environment.storageurl + this.Model.promo?.ImageFilenameMD;\n if (this.Model.promo?.ImageFilenameLG)this.Model.promo.ImageFilenameLG = environment.storageurl + this.Model.promo?.ImageFilenameLG;\n this.title.setTitle(this.Model.Caption);\n this.Model.Description = this.Model.Description?.replaceAll(\n 'Terms and Conditions apply',\n ''\n );\n this.Images.push(this.Model.Image);\n this.imgloaded = true;\n if (this.Model.GroupSpecial != true) {\n this.apiservice\n .getSingle(\n 'Dealerships',\n this.Model.DealershipID_FK,\n {}\n )\n .then((x: any) => {\n\n this.Dealer = x.body;\n this.DataSource = x.body.DataSourceID_FK;\n });\n }\n } else {\n window.location.href = '404';\n }\n });\n\n }\n });\n });\n }\n }\n\n sortAcc() {\n if (this.Model.VehicleStockAccessoriesList) {\n var i = 0;\n this.Accessories =\n //var vehicleAccessories =\n this.Model.VehicleStockAccessoriesList.split(',');\n /*vehicleAccessories.sort();\n while (vehicleAccessories.length > 0) {\n this.Accessories.push([\n vehicleAccessories.shift(),\n vehicleAccessories.shift(),\n ]);\n i++;\n }*/\n }\n }\n\n gtag(type: any) {\n let gaScript = document.createElement('script');\n gaScript.innerText =\n \"gtag('event','view_item', {'value': \" +\n (this.Model.RetailPriceIncl || this.Model.NewVehiclePrice) +\n \",'items': [{'id': \" +\n type +\n (this.Model.CACStockID || this.Model.CACID) +\n \",'google_business_vertical': 'retail'}]});\";\n\n document.head.appendChild(gaScript);\n }\n\n monthlyPayment(price: any) {\n var vp = parseInt(price), //vehicle price incl vat\n // deposit as percentage. ie 10% will be passed through as 0.1\n dpamt = (vp * environment.FinanceDeposit) / 100, //deposit amount\n tm = environment.FinanceMonths, //terms month\n i = environment.FinanceInterest / 100, //interest rate\n loan = 0,\n MonPmt = 0,\n balloonAmount = (environment.FinanceBalloon / 100) * vp;\n loan = vp + environment.initfee - dpamt; //additional amounts are normally what mccarthy add on (once off fee R1140 and R57 per month)\n i /= 12;\n\n MonPmt = Math.ceil(\n (loan * Math.pow(1 + i, tm)) / ((Math.pow(1 + i, tm) - 1) / i) -\n balloonAmount / ((Math.pow(1 + i, tm) - 1) / i)\n );\n\n return MonPmt + environment.adminfee;\n }\n num(inp: string) {\n var it = inp;\n return it.split(' ').join(',');\n }\n enquire() {\n var data = {\n ID:\n this.Model.SpecialID_PK ||\n this.Model.VehicleStockID_PK ||\n this.Model.VehicleModelID_PK ||\n this.Model.VehicleID,\n Name: this.Model.WebFriendlyName ? (this.Model.ModelYear + ' ' + this.Model.WebFriendlyName) : this.Model.ModelDescription || this.Model.Caption,\n Dealer: this.Model.GroupSpecial ? null : this.Model.DealershipID_FK,\n Price:\n this.Model.NewVehiclePrice ||\n this.Model.Price ||\n this.Model.RetailPriceIncl,\n Type:\n this.Model.VehicleStockType ? \n this.Model.VehicleStockType == 'New'? 'newstock':this.Model.VehicleStockType == 'Pre-Owned' || this.Model.VehicleStockType == 'Demo' ? \n 'used' \n : this.Model.VehicleModelID_PK ? 'new' : this.Model.VehicleStockType.toLowerCase()\n : this.type == 'special' ? 'specials' : this.type,\n Source: this.DataSource,\n };\n this.modalService.open('enquire', data);\n }\n\n finance() {\n this.modalService.open(\n 'finance',\n this.Model.RetailPriceIncl || this.Model.NewVehiclePrice, this.currency\n );\n }\n\n compare() {\n window.location.href =\n '/compare?type=' +\n (this.Model.VehicleStockType == 'Pre-Owned'\n ? 'used'\n : (this.Model.VehicleStockType || 'new').toLowerCase()) +\n '&vehicle1=' +\n this.modelId;\n }\n\n back(): void {\n this.location.back();\n }\n\n spec(name: string) {\n var find = this.Specs.find((x: any) => x.Name == name);\n if (find) {\n return find.Value;\n } else {\n return '-';\n }\n }\n\n specNam(name: string) {\n var find = this.Specs.find((x: any) => x.Name == name);\n if (find && find.NamibiaValue != null) {\n return find.NamibiaValue;\n } else {\n return '-';\n }\n }\n}\n\nconst routes: Routes = [\n {\n path: '',\n component: DetailsBaseComponent,\n data: { Module: 'Buy', Title: 'Buy' },\n },\n];\n\n@NgModule({\n declarations: [\n DetailsBaseComponent,\n ImglistComponent,\n ModelcolourComponent,\n SafePipe\n ],\n imports: [\n CommonModule,\n SliderModule,\n ReviewsModule,\n EnquireComponent\n ],\n exports: [\n DetailsBaseComponent\n ]\n})\nexport class DetailsBaseModule {}\n","<ng-container *ngIf=\"this.site != undefined\">\n <app-detailsBase *ngIf=\"!this.isAlternativeDetails || this.type=='special'\"></app-detailsBase>\n <app-detailsAlter *ngIf=\"this.isAlternativeDetails && this.type!='special'\"></app-detailsAlter>\n</ng-container>","import {\n ChangeDetectorRef,\n Component,\n NgModule,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { ActivatedRoute, RouterModule, Routes } from '@angular/router';\nimport { GearsApiService } from 'src/app/services/gearsapi.service';\nimport { CommonModule, Location } from '@angular/common';\nimport { ModalService } from 'src/app/modules/modalservice.service';\nimport { SitesService } from 'src/app/services/sites.service';\n\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer, Title } from '@angular/platform-browser';\nimport { DetailsAlterComponent, DetailsAlterModule } from './detailsAlter/detailsAlter.component';\nimport { DetailsBaseComponent, DetailsBaseModule } from './detailsBase/detailsBase.component';\n\n@Pipe({\n name: 'safe',\n})\nexport class SafePipe implements PipeTransform {\n constructor(private sanitizer: DomSanitizer) {}\n transform(url: any) {\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\n }\n}\ndeclare var Spin: any;\n@Component({\n selector: 'app-details',\n templateUrl: './details.component.html',\n styleUrls: ['./details.component.less'],\n})\nexport class DetailsComponent implements OnInit {\n @ViewChild('spin', { static: false }) spin: any;\n isAlternativeDetails : boolean = false;\n site: any;\n type: any;\n constructor(\n public modalService: ModalService,\n private siteService: SitesService,\n private route: ActivatedRoute\n ) {}\n\n ngOnInit(): void {\n this.siteService.get().then((site: any) => {\n this.isAlternativeDetails = site.layoutGlobal[0]?.PageLayoutType.find((x:any) => x.PageLayoutTypeName == 'AlternativeDetails') ? true : false;\n this.site = site;\n this.type = this.route.snapshot.paramMap.get('type')!\n this.isAlternativeDetails = (this.isAlternativeDetails && this.type) == 'new' ? true : false;\n });\n \n }\n}\nconst routes: Routes = [\n {\n path: '',\n component: DetailsComponent,\n data: { Module: 'Buy', Title: 'Buy' },\n },\n];\n\n@NgModule({\n declarations: [\n DetailsComponent,\n SafePipe\n ],\n imports: [\n RouterModule.forChild(routes),\n CommonModule,\n DetailsBaseModule,\n DetailsAlterModule\n ]\n})\nexport class DetailsModule {}\n"],"x_google_ignoreList":[]}