{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./src/app/_helpers/auth.guard.ts","./src/app/_helpers/error.interceptor.ts","./src/app/_helpers/index.ts","./src/app/_helpers/jwt.interceptor.ts","./src/app/_models/index.ts","./src/app/_models/pets.ts","./src/app/_models/socialusers.ts","./src/app/_models/user.ts","./src/app/_services/alert.service.ts","./src/app/_services/authentication.service.ts","./src/app/_services/index.ts","./src/app/_services/login.service.ts","./src/app/_services/owner.service.ts","./src/app/_services/pets.service.ts","./src/app/_services/staticpages.service.ts","./src/app/_services/user.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/common/common.component.ts","./src/app/common/common.component.html","./src/app/common/header/header.component.ts","./src/app/common/header/header.component.html","./src/app/company-user-login/company-user-login.component.ts","./src/app/company-user-login/company-user-login.component.html","./src/app/dashboard/dashboard.component.ts","./src/app/dashboard/dashboard.component.html","./src/app/home/home.component.ts","./src/app/home/home.component.html","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/minside-auth-callback/minside-auth-callback.component.ts","./src/app/minside-auth-callback/minside-auth-callback.component.html","./src/app/pets/detail/detail.component.ts","./src/app/pets/detail/detail.component.html","./src/app/pets/dialog/dialog.component.ts","./src/app/pets/dialog/dialog.component.html","./src/app/pets/list/list.component.ts","./src/app/pets/list/list.component.html","./src/app/pets/pets.component.ts","./src/app/pets/report/found/found.component.ts","./src/app/pets/report/found/found.component.html","./src/app/pets/report/found/personalinfo/personalinfo.component.ts","./src/app/pets/report/found/personalinfo/personalinfo.component.html","./src/app/pets/report/found/petinfo/petinfo.component.ts","./src/app/pets/report/found/petinfo/petinfo.component.html","./src/app/pets/report/lost/lost.component.ts","./src/app/pets/report/lost/lost.component.html","./src/app/pets/report/lost/personalinfo/personalinfo.component.ts","./src/app/pets/report/lost/personalinfo/personalinfo.component.html","./src/app/pets/report/lost/petinfo/petinfo.component.ts","./src/app/pets/report/lost/petinfo/petinfo.component.html","./src/app/pets/report/lost/petlist/petlist.component.ts","./src/app/pets/report/lost/petlist/petlist.component.html","./src/app/pets/report/report.component.ts","./src/app/pets/report/report.component.html","./src/app/pets/thanks/thanks.component.ts","./src/app/pets/thanks/thanks.component.html","./src/app/pets/updatepetinfo/updatepetinfo.component.ts","./src/app/pets/updatepetinfo/updatepetinfo.component.html","./src/app/staticpages/staticpages.component.ts","./src/app/staticpages/staticpages.component.html","./src/app/user-profile/user-profile.component.ts","./src/app/user-profile/user-profile.component.html","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { AuthenticationService } from '../_services';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authenticationService: AuthenticationService\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n const currentUser = this.authenticationService.currentUserValue;\r\n if (currentUser) {\r\n // logged in so return true\r\n return true;\r\n }\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\nimport { AuthenticationService } from '../_services';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n constructor(private authenticationService: AuthenticationService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(request).pipe(catchError(err => {\r\n if (err.status === 401) {\r\n // auto logout if 401 response returned from api\r\n this.authenticationService.logout();\r\n location.reload(true);\r\n }\r\n\r\n const error = err.error.message || err.statusText;\r\n return throwError(error);\r\n }))\r\n }\r\n}","export * from './auth.guard';\r\nexport * from './error.interceptor';\r\nexport * from './jwt.interceptor';","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { AuthenticationService } from '../_services';\r\n\r\n@Injectable()\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n constructor(private authenticationService: AuthenticationService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n // add authorization header with jwt token if available\r\n let currentUser = this.authenticationService.currentUserValue;\r\n if (currentUser && currentUser.token) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${currentUser.token}`\r\n }\r\n });\r\n }\r\n\r\n return next.handle(request);\r\n }\r\n}","export * from './user';\r\nexport * from './socialusers';\r\nexport * from './pets';","export class Pets { \r\n petDetails: {\r\n UserLoginID: number,\r\n IsChipped: 1,\r\n ChipID: string,\r\n OperationTypeID: 1,\r\n PetName: string,\r\n MasterSpeciesID: 1,\r\n MasterSpecies: string,\r\n MasterBreedID: 12,\r\n MasterBreed: string,\r\n Gender: string,\r\n DateOfBirth: string,\r\n LostFoundDate: string,\r\n Area: string,\r\n Commune: string,\r\n State: string,\r\n StateID: 0,\r\n Country: string,\r\n CountryID: 1,\r\n AdditionalInfo: string,\r\n ImageID: 0,\r\n ImagePath: string,\r\n Color: string,\r\n CoatLength: string,\r\n Description: string,\r\n lat: string,\r\n lng: string,\r\n IsReunite: 1, \r\n Status: 1,\r\n petImgUrl:string\r\n };\r\n userInfo: {\r\n LoginUserID: 0,\r\n FirstName: string,\r\n LastName: string,\r\n DateOfBirth: string,\r\n GenderID: 0,\r\n Gender: string,\r\n Age: string,\r\n RelationshipID: 0,\r\n Relationship: string,\r\n EmailID: string,\r\n ContactNumber: string,\r\n Address: string,\r\n LandID: 0,\r\n Land: string,\r\n ZipCode: string,\r\n City: string,\r\n CountryID: 1,\r\n Country: string,\r\n Municipal: string,\r\n IsTermsAccepted: 0,\r\n GDPRUserStatus: 0,\r\n Latitude: string,\r\n Longitude: string,\r\n Status: 1,\r\n State: string\r\n }\r\n}","export class Socialusers {\n SocialID: string;\n FirstName: string;\n LastName: string;\n EmailID: string;\n Address: string;\n City: string;\n District: string;\n State: string;\n Zipcode: string;\n AuthToken: string;\n Provider: string;\n ContactNumber: string;\n Password : string;\n Country: string;\n Company : string;\n }\n ","export class User {\n provider: string; \n id: number;\n name: string;\n email: string;\n image: string; \n token?: string; \n idToken?: string; \n FirstName?: string;\n LastName?: string;\n Company?:string;\n Password?:string;\n}","import { Injectable } from '@angular/core';\nimport { Router, NavigationStart } from '@angular/router';\nimport { Observable, Subject } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class AlertService {\n private subject = new Subject();\n private keepAfterRouteChange = false;\n\n constructor(private router: Router) {\n // clear alert messages on route change unless 'keepAfterRouteChange' flag is true\n this.router.events.subscribe(event => {\n if (event instanceof NavigationStart) {\n if (this.keepAfterRouteChange) {\n // only keep for a single route change\n this.keepAfterRouteChange = false;\n } else {\n // clear alert message\n this.clear();\n }\n }\n });\n }\n\n getAlert(): Observable {\n return this.subject.asObservable();\n }\n\n success(message: string, keepAfterRouteChange = false) {\n this.keepAfterRouteChange = keepAfterRouteChange;\n this.subject.next({ type: 'success', text: message });\n }\n\n error(message: string, keepAfterRouteChange = false) {\n this.keepAfterRouteChange = keepAfterRouteChange;\n this.subject.next({ type: 'error', text: message });\n }\n\n clear() {\n // clear by calling subject.next() without parameters\n this.subject.next();\n }\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\n\r\nimport { environment } from '../../environments/environment';\r\nimport { User } from '../_models';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthenticationService {\r\n private currentUserSubject: BehaviorSubject;\r\n public currentUser: Observable;\r\n\r\n constructor(private http: HttpClient) {\r\n this.currentUserSubject = new BehaviorSubject(JSON.parse(localStorage.getItem('currentUser')));\r\n // console.log(localStorage.getItem('currentUser'))\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n }\r\n\r\n public get currentUserValue(): User {\r\n return this.currentUserSubject.value;\r\n }\r\n\r\n login(socialuser) {\r\n return this.http.post(`${environment.apiUrl + environment.AddUpdateLogInUser}`, socialuser)\r\n .pipe(map(user => {\r\n // console.log(user);\r\n // store user details and jwt token in local storage to keep user logged in between page refreshes\r\n localStorage.setItem('currentUser', JSON.stringify(user.data));\r\n this.currentUserSubject.next(user.data);\r\n return user;\r\n })); \r\n }\r\n \r\n logout() {\r\n // remove user from local storage to log user out\r\n localStorage.removeItem('socialUser');\r\n localStorage.removeItem('currentUser');\r\n localStorage.removeItem('socialusers');\r\n this.currentUserSubject.next(null);\r\n }\r\n GetListCount() {\r\n return this.http.get(`${environment.apiUrlM}`)\r\n }\r\n\r\n GetDailyReportedPets() {\r\n const HttpUploadOptions = {\r\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\", \r\n \"APIKey\":\"32FF43A4-5CB9-424D-89BC-59242E4D4DF1\"}) \r\n }\r\n return this.http.get(`${environment.DailyRegisterPetsCount}`, HttpUploadOptions)\r\n }\r\n CompanyUserLogIn(socialuser) {\r\n debugger;\r\n return this.http.post(`${environment.apiUrl + environment.CompanyUserLogIn}`, socialuser)\r\n .pipe(map(user => {\r\n // console.log(user);\r\n if(user.data != null || user.data != undefined)\r\n {\r\n // store user details and jwt token in local storage to keep user logged in between page refreshes\r\n localStorage.setItem('currentUser', JSON.stringify(user.data));\r\n this.currentUserSubject.next(user.data);\r\n return user;\r\n }\r\n else{\r\n alert(\"invalid login details\");\r\n }\r\n })); \r\n }\r\n}\r\n\r\n","export * from './alert.service';\nexport * from './authentication.service';\nexport * from './user.service';\nexport * from './pets.service';\nexport * from './login.service';\nexport * from './owner.service';\nexport * from './staticpages.service';","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { environment } from '../../environments/environment';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoginService {\n\n constructor(private http: HttpClient) { }\n\n\n login(socialuser )\n {\n return this.http.post(`${environment.apiUrl + environment.AddUpdateLogInUser}`,socialuser);\n \n }\n}","import { Injectable } from '@angular/core';\nimport { environment } from '../../environments/environment';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OwnerService {\n\n constructor(private http: HttpClient) { }\n\n getOwnerAuthToken(UserToken: string) {\n const HttpUploadOptions = {\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\", \n \"APIKEY\":\"yUkZFfIo0Ujw48uQ7oeMQJ6XlWu7aCbU\"}) \n }\n const UserTokenRequest = {\n \"UserToken\" : UserToken\n }\n \n return this.http.post(`${environment.apiUrlMinside + environment.GetOwnerAuthToken}`, UserTokenRequest,HttpUploadOptions);\n }\n\n getOwnerPetList(AuthToken: string) {\n const HttpUploadOptions = {\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\", \n \"APIKEY\":\"yUkZFfIo0Ujw48uQ7oeMQJ6XlWu7aCbU\",\n \"AUTHTOKEN\":AuthToken}) \n }\n return this.http.post(`${environment.apiUrlMinside + environment.GetOwnerPetList}`, null,HttpUploadOptions);\n }\n getUserDetailByPhone(phone: string) {\n const postData = {\"Phone\": phone};\n const HttpUploadOptions = {\n headers: new HttpHeaders({ \"Content-Type\": \"application/json\", \n \"APIKEY\":\"yUkZFfIo0Ujw48uQ7oeMQJ6XlWu7aCbU\"}) \n }\n return this.http.post(`${environment.GetOwnerDetailEasyConnectAPI}`,postData,HttpUploadOptions);\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../environments/environment';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class PetsService {\r\n public petListany: any = [];\r\n constructor(\r\n private http: HttpClient,\r\n public translate: TranslateService\r\n ) {\r\n }\r\n \r\n getCountry() {\r\n return this.http.get(`${environment.apiUrl + environment.getCountryDropdown}`);\r\n }\r\n\r\n getSpecies() {\r\n let browserLang = this.translate.getBrowserLang();\r\n let LanguageCode = browserLang.match(/en|no/) ? browserLang : 'no';\r\n return this.http.get(`${environment.apiUrl + environment.getSpeciesDropDown}?LanguageCode=${LanguageCode}`);\r\n }\r\n\r\n getBreeds(species: string) {\r\n let browserLang = this.translate.getBrowserLang();\r\n let LanguageCode = browserLang.match(/en|no/) ? browserLang : 'no';\r\n let breedURL = `${environment.apiUrl + environment.getBreedsDropDown}?SpeciesID=${species}&GetActive=true&LanguageCode=${LanguageCode}`;\r\n return this.http.get(breedURL);\r\n }\r\n\r\n getChipInfo(chipId: string) {\r\n let chipInfo = `${environment.GetChipInfo}?chipId=${chipId}`;\r\n return this.http.get(chipInfo);\r\n }\r\n\r\n IsChipIDExists(chipId: string, OperationTypeID: any) {\r\n let IsChipID = `${environment.apiUrl + environment.IsChipIDExists}?chipId=${chipId}&OperationTypeID=${OperationTypeID}`;\r\n return this.http.get(IsChipID);\r\n }\r\n\r\n GetLostFoundPetsListPartialFields(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLostFoundPetsListPartialFields}`;\r\n return this.http.get(URL, { params: filter });\r\n // return this.http.get(URL,{params: filter});\r\n }\r\n GetLostFoundPetsListfromMincide(filter: any) {\r\n let URL = `${environment.apiUrlMinside + environment.GetLostFoundPetsList}`;\r\n return this.http.get(URL, { params: filter });\r\n // return this.http.get(URL,{params: filter});\r\n }\r\n\r\n GetPetsForLandingPage(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetPetsForLandingPage}`;\r\n return this.http.get(URL, { params: filter });\r\n\r\n }\r\n GetPetsForLandingPage1() {\r\n let URL = `${environment.apiUrl + environment.GetPetsForLandingPage}`;\r\n return this.http.get(URL);\r\n }\r\n GetLandingPageLostPets(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLandingPageLostPets}`;\r\n return this.http.get(URL, { params: filter });\r\n }\r\n\r\n GetLandingPageFoundPets(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLandingPageFoundPets}`;\r\n return this.http.get(URL, { params: filter });\r\n }\r\n\r\n GetLandingPageLostPets_(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLandingPageLostPets}`;\r\n return this.http.get(URL, { params: filter });\r\n }\r\n\r\n GetLostPetsForLandingPage() {\r\n let URL = `${environment.apiUrl + environment.GetLostPetsForLandingPage}`;\r\n return this.http.get(URL);\r\n\r\n }\r\n\r\n GetFoundPetsForLandingPage() {\r\n let URL = `${environment.apiUrl + environment.GetFoundPetsForLandingPage}`;\r\n return this.http.get(URL);\r\n\r\n }\r\n GetAllPetsForLandingPage() {\r\n let URL = `${environment.apiUrl + environment.GetAllPetsForLandingPage}`;\r\n return this.http.get(URL);\r\n\r\n }\r\n\r\n\r\n addUpdateLostFoundPetDetails(petdata) {\r\n const HttpUploadOptions = {\r\n headers: new HttpHeaders(\r\n {\r\n //\"Content-Type\": \"application/x-www-form-urlencoded\",\r\n \"APIKEY\": \"560C51EE-D641-487E-AD6F-1C2A525C2727\"\r\n })\r\n }\r\n return this.http.post(`${environment.apiUrl + environment.AddUpdateLostFoundPetDetails}`, petdata, HttpUploadOptions);\r\n }\r\n\r\n GetLostFoundPetsList(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLostFoundPetsFilterList}`;\r\n return this.http.get(URL, { params: filter });\r\n }\r\n\r\n GetLostFoundPetsListForHomePage(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLostFoundPetsListForHomePage}`;\r\n return this.http.get(URL, { params: filter });\r\n }\r\n\r\n // GetReportedPetsCount(filter: any)\r\n // {\r\n // let URL = `${environment.apiUrl + environment.GetReportedPetsCount }`;\r\n // return this.http.get(URL,{params: filter});\r\n // }\r\n\r\n // GetReportedPetsCountMap(filter: any)\r\n // {\r\n // let URL = `${environment.apiUrl + environment.GetReportedPetsCountMap }`;\r\n // return this.http.get(URL,{params: filter});\r\n // }\r\n\r\n GetLostFoundPetDetailsByID(parameters) {\r\n if (parameters != null && parameters != undefined) {\r\n return this.http.get(`${environment.apiUrl + environment.GetLostFoundPetDetailsByID}`, { params: parameters });\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n GetLostFoundPetsListByUser(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLostFoundPetsListByUser}`;\r\n return this.http.post(URL, filter);\r\n }\r\n GetLostFoundPetsListCountByUser(filter: any) {\r\n let URL = `${environment.apiUrl + environment.GetLostFoundPetsListCountByUser}`;\r\n return this.http.post(URL, filter);\r\n }\r\n\r\n markPetAsReunited(postData: any) {\r\n let URL = `${environment.apiUrl + environment.MarkPetasReunited}`;\r\n return this.http.post(URL, postData);\r\n }\r\n GetPetSuggestion(postData: any) {\r\n let URL = `${environment.apiUrl + environment.GetPetSuggestionbyLostFoundId}`;\r\n return this.http.post(URL, postData);\r\n }\r\n RemoveReportedPet(postData: { LostFoundId: any; UpdatedBy: any; }) {\r\n let URL = `${environment.apiUrl + environment.RemoveReportedPet}`;\r\n return this.http.post(URL, postData);\r\n }\r\n\r\n UpdatePetInfo(petInfo) {\r\n return this.http.post(`${environment.apiUrl + environment.UpdatePetInfo}`, petInfo);\r\n }\r\n\r\n assignListData(petList: any): void {\r\n this.petListany = [...petList];\r\n }\r\n\r\n fetchListData(): any {\r\n return this.petListany ;\r\n }\r\n\r\n}","// import { Injectable } from '@angular/core';\r\n// import { HttpClient, HttpHeaders } from '@angular/common/http';\r\n// import { environment } from '../../environments/environment';\r\n\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { User } from '../_models';\r\nimport { config } from 'process';\r\nimport { environment } from '../../environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class StaticPagesService {\r\n\r\n constructor(private http: HttpClient) { }\r\n \r\n GetPageStaticData(DisplayPageName: string)\r\n {\r\n let data = `${environment.apiUrl + environment.GetPageStaticData }?DisplayPageName=${DisplayPageName}`;\r\n return this.http.get(data);\r\n }\r\n}","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\n\nimport { User } from '../_models';\nimport { config } from 'process';\nimport { environment } from '../../environments/environment';\n\n@Injectable({ providedIn: 'root' })\n\nexport class UserService {\n\n constructor(private http: HttpClient) { }\n\n getUserByEmailID(emailId: string,provider: string) {\n let getUserByEmailIDUrl= `${environment.apiUrl + environment.GetUserByEmailID}?emailID=${emailId}&provider=${provider}`;\n return this.http.get(getUserByEmailIDUrl);\n }\n\n UpdateUserInfo(userInfo){\n \n return this.http.post(`${environment.apiUrl + environment.UpdateUserInfo}`, userInfo);\n }\n \n\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { CompanyUserLoginComponent } from '../app/company-user-login/company-user-login.component'\r\nimport { HomeComponent } from './home/home.component';\r\nimport { ReportFoundComponent } from './pets/report/found/found.component';\r\nimport { ReportLostComponent } from './pets/report/lost/lost.component';\r\nimport { ListComponent } from './pets/list/list.component';\r\n\r\nimport { ThanksComponent } from './pets/thanks/thanks.component';\r\nimport { AuthGuard } from './_helpers';\r\nimport { MinsideAuthCallbackComponent } from './minside-auth-callback/minside-auth-callback.component';\r\nimport { LostPetListComponent } from './pets/report/lost/petlist/petlist.component';\r\nimport { StaticpagesComponent } from '../app/staticpages/staticpages.component';\r\nimport { DetailComponent } from './pets/detail/detail.component';\r\nimport { DashboardComponent } from './dashboard/dashboard.component';\r\nimport { UserProfileComponent } from '../app/user-profile/user-profile.component';\r\nimport { UpdatepetinfoComponent } from '../app/pets/updatepetinfo/updatepetinfo.component';\r\n\r\nconst routes: Routes = [\r\n // { path: 'login', component: LoginComponent,\r\n // data: {breadcrumb: { label: 'login'} }\r\n // },\r\n\r\n {\r\n path: 'login', component: LoginComponent\r\n\r\n },\r\n {\r\n path: 'Companylogin', component: CompanyUserLoginComponent\r\n\r\n },\r\n {\r\n path: 'report-found', component: ReportFoundComponent, canActivate: [AuthGuard],\r\n data: { breadcrumb: { label: 'Report Found Pet' } }\r\n },\r\n {\r\n path: 'report-found', data: { breadcrumb: { label: 'Report Found' } },\r\n children: [\r\n {\r\n path: 'pet-detail',\r\n component: DetailComponent,\r\n data: { breadcrumb: { label: 'Details' } }\r\n }\r\n ]\r\n },\r\n {\r\n path: 'report-lost', component: ReportLostComponent, canActivate: [AuthGuard],\r\n data: { breadcrumb: { label: 'Report Lost Pet' } }\r\n },\r\n {\r\n path: 'report-lost', data: { breadcrumb: { label: 'Report Lost' } },\r\n children: [\r\n {\r\n path: 'pet-detail',\r\n component: DetailComponent,\r\n data: { breadcrumb: { label: 'Details' } }\r\n }\r\n ]\r\n },\r\n {\r\n path: 'list-pets', component: ListComponent,\r\n data: { breadcrumb: { label: 'Browse List' } }\r\n },\r\n {\r\n path: 'list-pets', data: { breadcrumb: { label: 'Browse List' } },\r\n children: [\r\n {\r\n path: 'pet-detail/:petId/:petName',\r\n component: DetailComponent,\r\n data: { breadcrumb: { label: 'Details' } }\r\n }\r\n ]\r\n },\r\n\r\n {\r\n path: 'aboutus', component: StaticpagesComponent,\r\n data: { breadcrumb: { label: 'About Us' } }\r\n },\r\n {\r\n path: 'services', component: StaticpagesComponent,\r\n data: { breadcrumb: { label: 'Services' } }\r\n },\r\n {\r\n path: 'termsandconditions', component: StaticpagesComponent,\r\n data: { breadcrumb: { label: 'Services' } }\r\n },\r\n {\r\n path: 'privacypolicy', component: StaticpagesComponent,\r\n data: { breadcrumb: { label: 'Privacy Policy' } }\r\n },\r\n {\r\n path: 'userprofile', component: UserProfileComponent,\r\n data: { breadcrumb: { label: 'User Profile' } }\r\n },\r\n { path: 'minside-auth-callback/:id/:referPage', component: MinsideAuthCallbackComponent },\r\n { path: 'minside-auth-callback/:id', component: MinsideAuthCallbackComponent },\r\n\r\n {\r\n path: 'dashboard', component: DashboardComponent, canActivate: [AuthGuard],\r\n data: { breadcrumb: { label: 'Dashboard' } }\r\n },\r\n {\r\n path: 'dashboard', data: { breadcrumb: { label: 'Dashboard' } },\r\n children: [\r\n {\r\n path: 'pet-detail',\r\n component: DetailComponent,\r\n data: { breadcrumb: { label: 'Pet Details' } }\r\n },\r\n {\r\n path: 'pet-detailupdate',\r\n component: UpdatepetinfoComponent,\r\n data: { breadcrumb: { label: 'Update Pet Details ' } }\r\n },\r\n\r\n ]\r\n },\r\n // { path: '', component: HomeComponent, data: {\r\n // breadcrumb: {\r\n // label: 'Home',\r\n // info: { icon: 'home', iconType: 'material' }\r\n // }\r\n // } },\r\n // ------------------------------\r\n {\r\n path: '', component: HomeComponent,\r\n data: { breadcrumb: { label: 'Home' } }\r\n },\r\n {\r\n path: '', data: { breadcrumb: { label: 'Home' } },\r\n children: [\r\n {\r\n path: 'pet-detail',\r\n component: DetailComponent,\r\n data: { breadcrumb: { label: 'Pet Details' } }\r\n }\r\n ]\r\n },\r\n // -----------------------------\r\n];\r\nexport const AppRoutingModule = RouterModule.forRoot(routes);","import { Component } from '@angular/core';\r\nimport { AuthenticationService } from './_services';\r\nimport { User } from './_models';\r\nimport { AuthService } from 'angularx-social-login';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Title, Meta } from '@angular/platform-browser';\r\nimport { DateAdapter } from '@angular/material';\r\nimport { environment } from '../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent {\r\n\r\n currentUser: User;\r\n title = 'Lost and Found | DyreIDLostAndFound';\r\n report: boolean = false;\r\n list: boolean = false;\r\n static: boolean = false;\r\n currentPath:string = '';\r\n\r\n constructor(\r\n private authService: AuthService,\r\n public router: Router,\r\n private authenticationService: AuthenticationService,\r\n public translate: TranslateService,\r\n private titleService: Title, private metaService: Meta,\r\n private dateAdapter: DateAdapter\r\n ) {\r\n this.authenticationService.currentUser.subscribe(x => this.currentUser = x);\r\n translate.addLangs(['en', 'no']);\r\n const browserLang = translate.getBrowserLang();\r\n translate.use(browserLang.match(/en|no/) ? browserLang : 'no');\r\n this.dateAdapter.setLocale('no');\r\n }\r\n ngOnInit() {\r\n this.router.events.subscribe((val: any) => {\r\n if (val && val.url) this.currentPath = val.url;\r\n });\r\n this.titleService.setTitle(this.title);\r\n\r\n if (environment.production == true) {\r\n if (location.protocol === 'http:') {\r\n window.location.href = location.href.replace('http', 'https');\r\n }\r\n }\r\n }\r\n\r\n ReportAddRemove() {\r\n this.report = !this.report;\r\n this.static = false;\r\n this.list = false;\r\n event.preventDefault();\r\n }\r\n ListAddRemove() {\r\n this.list = !this.list;\r\n this.report = false;\r\n this.static = false;\r\n event.preventDefault();\r\n }\r\n StaticAddRemove() {\r\n this.static = !this.static;\r\n this.report = false;\r\n this.list = false;\r\n event.preventDefault();\r\n }\r\n\r\n\r\n public _opened: boolean = false;\r\n public _closeOnClickOutside = true;\r\n\r\n public _toggleOpened(): void {\r\n this._opened = !this._opened;\r\n }\r\n\r\n public _onBackdropClicked(): void {\r\n console.info('Backdrop clicked');\r\n }\r\n Cancel() {\r\n this.router.navigate(['/']);\r\n }\r\n signOut(): void {\r\n this.authenticationService.logout();\r\n // this.router.navigate(['/login']);\r\n this.router.navigate(['']);\r\n }\r\n onActivate(event) {\r\n // console.log(\"Route activate\")\r\n const firstElementWithError = document.querySelector('.xng-breadcrumb-root');\r\n this.scrollTo(firstElementWithError);\r\n //or document.body.scrollTop = 0;\r\n //or document.querySelector('body').scrollTo(0,0)\r\n\r\n }\r\n scrollTo(el: Element): void {\r\n if (el) {\r\n el.scrollIntoView({ block: 'center' });\r\n }\r\n }\r\n}\r\n\r\n\r\n","\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{ info.icon }}\r\n \r\n {{ breadcrumb |translate}}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n arrow_right\r\n","import { BrowserModule, HammerGestureConfig, HAMMER_GESTURE_CONFIG, HammerModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\nimport { HeaderComponent } from './common/header/header.component';\nimport { LoginComponent } from './login/login.component';\nimport { HomeComponent } from './home/home.component';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgSelectModule } from '@ng-select/ng-select';\n\nimport { SocialLoginModule } from 'angularx-social-login';\nimport { AuthServiceConfig, GoogleLoginProvider, FacebookLoginProvider } from 'angularx-social-login';\nimport { PetsComponent } from './pets/pets.component';\nimport { SidebarModule } from 'ng-sidebar';\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { AgmCoreModule } from '@agm/core';\nimport { AgmJsMarkerClustererModule } from '@agm/js-marker-clusterer';\n\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport {MatDatepickerModule, MatInputModule,MatNativeDateModule,MatIconModule} from '@angular/material';\nimport { ThanksComponent } from './pets/thanks/thanks.component';\nimport { CommonComponent } from './common/common.component';\nimport { ReportComponent } from './pets/report/report.component';\nimport { ReportLostComponent } from './pets/report/lost/lost.component';\nimport { ReportFoundComponent } from './pets/report/found/found.component';\n\nimport { FoundPersonalinfoComponent } from './pets/report/found/personalinfo/personalinfo.component';\nimport { FoundPetinfoComponent } from './pets/report/found/petinfo/petinfo.component';\nimport { LostPetinfoComponent } from './pets/report/lost/petinfo/petinfo.component';\nimport { LostPersonalinfoComponent } from './pets/report/lost/personalinfo/personalinfo.component';\n\nimport { ListComponent } from './pets/list/list.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\n\nimport { DatePipe } from '@angular/common';\nimport { LostPetListComponent } from './pets/report/lost/petlist/petlist.component';\nimport { DialogComponent } from './pets/dialog/dialog.component';\nimport { StaticpagesComponent } from './staticpages/staticpages.component';\nimport { DetailComponent } from './pets/detail/detail.component';\n\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport {NgxPaginationModule} from 'ngx-pagination'; // <-- import the module\nimport { Ng5SliderModule } from 'ng5-slider';\nimport { UserProfileComponent } from './user-profile/user-profile.component';\nimport { ImageCropperModule } from 'ngx-image-cropper';\nimport {BreadcrumbModule} from 'xng-breadcrumb';\nimport { NgxSpinnerModule } from \"ngx-spinner\";\nimport { ShareModule } from '@ngx-share/core';\nimport { UpdatepetinfoComponent } from './pets/updatepetinfo/updatepetinfo.component';\nimport { CompanyUserLoginComponent } from './company-user-login/company-user-login.component';\n//import { InfiniteScrollModule } from 'ngx-infinite-scroll';\nimport * as Hammer from 'hammerjs';\nimport { FacebookModule } from 'ngx-facebook';\n\nimport { QRCodeModule } from 'angularx-qrcode';\n\nexport class MyHammerConfig extends HammerGestureConfig {\n overrides = {\n swipe: { direction: Hammer.DIRECTION_ALL },\n };\n}\n\nconst config = new AuthServiceConfig([\n {\n id: GoogleLoginProvider.PROVIDER_ID,\n provider: new GoogleLoginProvider('58407131780-ddtlfh64tcp0pfnmrlch9kkbel4qioko.apps.googleusercontent.com')\n },\n {\n id: FacebookLoginProvider.PROVIDER_ID,\n provider: new FacebookLoginProvider('2770853809663369')\n },\n]);\n\nexport function provideConfig() {\n return config;\n}\n\n@NgModule({\n declarations: [\n AppComponent,\n HeaderComponent,\n LoginComponent,\n HomeComponent,\n PetsComponent,\n ThanksComponent,\n FoundPersonalinfoComponent,\n FoundPetinfoComponent,\n CommonComponent,\n ReportComponent,\n ReportLostComponent,\n ReportFoundComponent,\n LostPetinfoComponent,\n LostPersonalinfoComponent,\n ListComponent,\n DashboardComponent,\n LostPetListComponent,\n DialogComponent,\n StaticpagesComponent,\n DetailComponent,\n UserProfileComponent,\n UpdatepetinfoComponent,\n CompanyUserLoginComponent\n ],\n imports: [\n BrowserModule,\n HammerModule,\n AppRoutingModule,\n NgbModule,\n SocialLoginModule,\n FormsModule,\n ReactiveFormsModule,\n SidebarModule.forRoot(),\n FacebookModule.forRoot(),\n HttpClientModule,\n NgSelectModule,\n NgxSpinnerModule,\n QRCodeModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyDGrBJEQfuafRoEsikREQGC-_b7-FrBzmY',\n libraries: ['places']\n }),\n AgmJsMarkerClustererModule,\n BrowserAnimationsModule,\n MatDatepickerModule, MatInputModule,MatNativeDateModule,MatIconModule,\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: httpTranslateLoader,\n deps: [HttpClient]\n }\n }),\n NgxPaginationModule,\n Ng5SliderModule,\n ImageCropperModule,\n BreadcrumbModule,\n ShareModule//,\n //InfiniteScrollModule\n ],\n providers: [\n {\n provide: AuthServiceConfig,\n useFactory: provideConfig,\n }, {\n provide: HAMMER_GESTURE_CONFIG,\n useClass: MyHammerConfig,\n },\n [DatePipe]\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n\nexport function httpTranslateLoader(http: HttpClient) {\n return new TranslateHttpLoader(http);\n}","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-common',\n templateUrl: './common.component.html'\n})\nexport class CommonComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","

common works!

\n","import { Component, OnInit } from '@angular/core';\nimport { AppComponent } from '../../app.component';\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss']\n})\nexport class HeaderComponent implements OnInit {\n\n constructor(public app: AppComponent) {\n\n }\n ngOnInit() {\n }\n public _toggleSidebar() {\n this.app._opened = !this.app._opened;\n }\n\n}\n","\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { AuthenticationService, AlertService } from '../_services';\nimport { AuthService } from 'angularx-social-login';\nimport { Socialusers } from '../_models';\nimport { first } from 'rxjs/operators';\n\n@Component({\n selector: 'app-company-user-login',\n templateUrl: './company-user-login.component.html',\n styleUrls: ['./company-user-login.component.scss']\n})\n \nexport class CompanyUserLoginComponent implements OnInit {\n loginForm: FormGroup;\n loading = false;\n submitted = false;\n returnUrl: string; \n socialusers = new Socialusers();\n\n constructor(\n private authService: AuthService,\n private formBuilder: FormBuilder,\n private route: ActivatedRoute,\n private router: Router,\n private authenticationService: AuthenticationService,\n private alertService: AlertService\n ) {\n // redirect to home if already logged in\n if (this.authenticationService.currentUserValue) {\n this.router.navigate(['/']);\n }\n }\n\n ngOnInit() {\n this.loginForm = this.formBuilder.group({\n username: ['', [Validators.required,Validators.pattern(\"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$\"),this.noWhitespaceValidator]],\n password: ['', Validators.required],\n company:['ViKing']\n });\n\n // get return url from route parameters or default to '/'\n this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/';\n }\n\n // convenience getter for easy access to form fields\n //get socialusers() { return this.loginForm.controls; }\n\n \n Savesresponse(socialusers: Socialusers) { \n this.authenticationService.CompanyUserLogIn(socialusers).subscribe((res: any) => { \n \n debugger;\n if(res != null || res != undefined)\n {\n this.socialusers = res.data;\n localStorage.setItem('socialusers', JSON.stringify( this.socialusers)); \n this.router.navigate([this.returnUrl]); \n }\n }) \n this.loading = false; \n } \n get f() { return this.loginForm.controls; }\n onSubmit() {\n debugger;\n console.log(JSON.stringify(this.loginForm.value));\n this.submitted = true;\n \n // reset alerts on submit\n this.alertService.clear();\n \n // stop here if form is invalid\n if (this.loginForm.invalid) {\n return;\n }\n debugger;\n this.socialusers.EmailID = this.f.username.value;\n this.socialusers.Password = this.f.password.value;\n this.socialusers.Company = this.f.company.value;\n\n this.loading = true;\n this.Savesresponse(this.socialusers);\n }\n public noWhitespaceValidator(control: FormControl) {\n const isWhitespace = (control.value || '').trim().length === 0;\n const isValid = !isWhitespace;\n return isValid ? null : { 'whitespace': true };\n }\n }","
\n
\n
\n

{{'Company User Login' | translate }}

\n
\n
\n
\n
\n
\n \n
\n \n
\n
{{'Username is required' | translate}}
\n
{{'Please Enter a valid Email-ID' | translate}}
\n
{{'Space is not allowed'| translate}}
\n
\n
\n
\n\n \n
\n \n
\n \n
\n
\n
{{'Password is required' | translate}}
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { environment } from 'src/environments/environment';\nimport { PetsService, AuthenticationService } from '../_services';\nimport { Router, ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'app-dashboard',\n templateUrl: './dashboard.component.html',\n styleUrls: ['./dashboard.component.scss']\n})\nexport class DashboardComponent implements OnInit {\n\n petImagePath = environment.apiBaseUrl + \"/Static/Images/\";\n detailMessageString = environment.lostFoundBaseUrl + \"dashboard/pet-detail?PetID=\";\n detailMessageStringEMail = \"Les mer : \" + environment.lostFoundBaseUrl + \"dashboard/pet-detail?PetID=\";\n petDetailsList: any;\n currentUser: any;\n totalCount: any;\n DastotalLost: any;\n DastotalFound: any;\n DastotalReUnite: any;\n OperationTypeID: any;\n OperationTypeHeading: string;\n petLostIdToReunite: any = 0;\n petFoundIdToReunite: any = 0;\n petSuggestionList: any;\n showReportedPetSuggestion: boolean;\n showReunitePetButton: boolean;\n showReuniteDate: boolean;\n page = 1;\n pageSize = 10;\n HideSugg: boolean = false;\n\n\n constructor(private petService: PetsService, private authenticationService: AuthenticationService,\n private router: ActivatedRoute, private route: Router,) { }\n\n ngOnInit() {\n this.currentUser = this.authenticationService.currentUserValue;\n\n this.ChangePetList(1); /// by default show Lost Pet\n\n\n }\n\n ChangePetList(opTypeID: any) {\n this.page = 1;\n this.OperationTypeID = opTypeID\n\n if (this.OperationTypeID == 1) {\n this.OperationTypeHeading = \"Lost\";\n this.showReunitePetButton = true;\n this.showReuniteDate = false;\n } else if (this.OperationTypeID == 2) {\n this.OperationTypeHeading = \"Found\";\n this.showReunitePetButton = true;\n this.showReuniteDate = false;\n } else if (this.OperationTypeID == 3) {\n this.OperationTypeHeading = \"Reunited\";\n this.showReunitePetButton = false;\n this.showReuniteDate = true;\n } else {\n this.OperationTypeHeading = \"Lost\";\n this.showReunitePetButton = true;\n this.showReuniteDate = true;\n }\n this.getPaginationGrid(this.page);\n }\n\n ReunitePet(lostFoundId: any) {\n // debugger;\n if (this.OperationTypeID > 2) {\n return false;\n }\n let subtext = this.OperationTypeID == 1 ? \"Found\" : \"Lost\";\n if (this.OperationTypeID == 1) {\n this.petLostIdToReunite = lostFoundId;\n this.petFoundIdToReunite = 0;\n subtext = \"found\";\n } else {\n this.petLostIdToReunite = 0;\n this.petFoundIdToReunite = lostFoundId;\n subtext = \"lost\";\n }\n let message = \"Are you sure wants to Re-Unite this pet\";\n let flag = confirm(message);\n\n if (flag) {\n this.MarkPetAsReunite(this.petLostIdToReunite, this.petFoundIdToReunite);\n }\n }\n\n ReunitePetSuggestion(lostFoundId: any) {\n // debugger;\n if (this.OperationTypeID > 2) {\n return false;\n }\n let subtext = this.OperationTypeID == 1 ? \"Found\" : \"Lost\";\n if (this.OperationTypeID == 1) {\n this.petLostIdToReunite = lostFoundId;\n this.petFoundIdToReunite = 0;\n subtext = \"found\";\n } else {\n this.petLostIdToReunite = 0;\n this.petFoundIdToReunite = lostFoundId;\n subtext = \"lost\";\n }\n let message = \"Do you want to check for any previously \" + subtext + \" reported pets\";\n let flag = confirm(message);\n\n if (flag) {\n this.HideSugg = false;\n let postData = {\n \"lostFoundId\": lostFoundId\n }\n this.petService.GetPetSuggestion(postData).subscribe(response => {\n this.petSuggestionList = response;\n if (this.petSuggestionList.RecordsFiltered == 0) {\n this.petSuggestionList = \"\"\n alert(\"No previously reported Pet Found\");\n } else {\n this.showReportedPetSuggestion = true;\n }\n });\n }\n }\n\n\n\n\n RemoveReportedPet(lostFoundId: any) {\n if (this.OperationTypeID > 2) {\n return false;\n }\n let flag = confirm(\"Are you sure you want to remove the reported pet ?\");\n if (flag) {\n let postData = { \"LostFoundId\": lostFoundId, \"UpdatedBy\": this.currentUser.ID }\n this.petService.RemoveReportedPet(postData).subscribe(response => {\n if (response.data > 0) {\n alert(\"Reported Pet is removed Successfully !!!!\");\n this.ChangePetList(this.OperationTypeID);\n } else {\n alert(\"error :\" + response.error);\n }\n });\n }\n }\n toggleReportedPetSuggestion() {\n this.showReportedPetSuggestion = !this.showReportedPetSuggestion;\n }\n\n associatePetandReunite(assocoatedLostFoundId: any) {\n if (assocoatedLostFoundId > 0) {\n if (this.OperationTypeID == 1) {\n //this.petLostIdToReunite = lostFoundId;\n this.petFoundIdToReunite = assocoatedLostFoundId;\n } else {\n this.petLostIdToReunite = assocoatedLostFoundId;\n //this.petFoundIdToReunite = lostFoundId;\n }\n this.MarkPetAsReunite(this.petLostIdToReunite, this.petFoundIdToReunite);\n this.petSuggestionList = \"\";\n }\n }\n\n MarkPetAsReunite(PetLostID: any, PetFoundId: any) {\n let postData = { \"PetLostId\": PetLostID, \"PetFoundId\": PetFoundId, \"UpdatedBy\": this.currentUser.ID }\n this.petService.markPetAsReunited(postData).subscribe(response => {\n if (response.data > 0) {\n alert(\"Pet is Marked Re-United Sucessfully !!!\");\n this.ChangePetList(this.OperationTypeID);\n } else {\n alert(response.error);\n }\n });\n }\n\n getPaginationGrid(page: number) {\n // debugger;\n this.page = page;\n let startIndex = (this.page == 1) ? 0 : (page - 1) * 10;\n let endIndex = startIndex + 10;\n\n\n let filters = {\n \"StartIndex\": startIndex,\n \"EndIndex\": endIndex,\n \"UserId\": this.currentUser.ID,\n \"ListType\": this.OperationTypeID,\n \"Company\": this.currentUser.Company\n }\n\n this.petService.GetLostFoundPetsListCountByUser(filters).subscribe(data => {\n this.DastotalLost = data.TotalLost;\n this.DastotalFound = data.TotalFound;\n this.DastotalReUnite = data.TotalReUnite;\n });\n\n this.petService.GetLostFoundPetsListByUser(filters).subscribe(response => {\n console.log(response);\n this.petDetailsList = response.data;\n this.totalCount = response.RecordsTotal;\n });\n\n\n }\n\n scrollTop = () => {\n\t\tconst element = document.querySelector('#scrollId');\n\t\telement.scrollIntoView({ behavior: 'smooth' });\n\t}\n \n CloseSuggestion(eve: any) {\n this.HideSugg = true;\n //eve.target.parentNode.parentNode.setAttribute('class','bottom-search-msg-box hide-sugg');\n // eve.target.parentNode.parentNode.remove();\n }\n\n\n openModal(event) {\n document.getElementById(event.currentTarget.parentElement.nextElementSibling.id).style.display = \"block\";\n }\n closeModal(event) {\n document.getElementById(event.currentTarget.parentElement.id).style.display = \"none\";\n }\n\n shareWithFacebook(id): void {\n let shareUrl = this.detailMessageString + id;\n //shareUrl = 'https://lostfound.staging.dyreid.no/pet-detail?PetID=1099';\n let url = 'http://www.facebook.com/sharer.php?u=' + shareUrl;\n let newwindow = window.open(url, 'name', 'height=500,width=520,top=200,left=300,resizable');\n if (window.focus) {\n newwindow.focus()\n }\n }\n\n //go to pet details page\n goToPetDetails = (petDetail: any) => {\n const petName = `${petDetail.Color ? petDetail.Color : ''} ${petDetail.MasterBreed ? petDetail.MasterBreed : ''} ${petDetail.MasterSpecies ? petDetail.MasterSpecies : ''} ${(this.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${petDetail.City ? petDetail.City : ''}`\n const urlString = petName.trim().toLowerCase().split(' ').join('-');\n const removeChar = urlString.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\");\n const encodedString = encodeURI(removeChar);\n const atobStr = btoa(petDetail.LostFoundID);\n localStorage.setItem('_page', 'dashboard');\n this.route.navigate([`list-pets/pet-detail/${atobStr}/${encodedString}`], {queryParams:{opType:this.OperationTypeID}});\n\n }\n}\n","
\n
\n
\n
 
\n
\n
\n
\n
{{\n (totalCount > 0 && OperationTypeID == 1)? DastotalLost : DastotalLost }} {{'Lost'| translate\n }}
\n
{{\n (totalCount > 0 && OperationTypeID == 2)? DastotalFound :DastotalFound }} {{'Found' |\n translate}}
\n
{{\n (totalCount >= 0 && OperationTypeID == 3)? DastotalReUnite :DastotalReUnite }} {{'Re-Unite' |\n translate}}
\n
\n\n \n \n
\n
\n
 
\n
\n

{{ OperationTypeHeading | translate}} {{'Pets' | translate}}

\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n ×\n
\n \n
\n
\n
\n \n
\n
\n \n
{{petDetail.Color +\" \"}}{{\n petDetail.MasterBreed +\" \"+\n petDetail.MasterSpecies}} {{ ((OperationTypeID == \"1\") ? 'Lost' : 'Found') | translate}} i {{petDetail.City}}
\n
\n \n
{{petDetail.Color +\" \"}}{{\n petDetail.MasterBreed }}\n ({{petDetail.MasterSpecies}}) {{ ((OperationTypeID == \"1\") ? 'Lost' : 'Found') | translate}} i {{petDetail.City}}
\n
\n \n\n \n\n \n

{{ (petDetail.Area == null) ? \"\" : petDetail.Area }} {{ ((petDetail.ZipCode == null) ? \"\" :\n petDetail.ZipCode) +\" \"+((petDetail.City == null) ? \"\" : petDetail.City)}}

\n

{{ ((OperationTypeID == \"1\") ? 'Lost' : 'Found') | translate}} {{\n 'Date' | translate\n }}: {{ petDetail.DisplayLostFoundDate}}

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

{{ pets.PetName }}

\n

{{'Species' | translate}}: {{ pets.SpeciesName }}

\n

{{'Breed' | translate}}: {{ pets.BreedsName }}

\n
\n \n
\n
\n
\n
\n
\n
\n
","import { Component, ViewChild, OnInit, NgZone, ElementRef } from '@angular/core';\nimport { AlertService, AuthenticationService } from '../_services';\nimport { PetsService } from '../_services';\nimport { environment } from '../../environments/environment';\nimport { interval, Subscription } from 'rxjs';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { MapsAPILoader } from '@agm/core';\nimport { Options } from 'ng5-slider';\nimport { Router } from '@angular/router';\nimport * as $ from 'jquery'\n\n@Component({\n selector: 'app-home',\n //directives: [InfiniteScrollModule],\n templateUrl: './home.component.html',\n styleUrls: ['./home.component.scss'],\n // styles: [\n // `.search-results {\n // height: 20rem;\n // overflow: scroll;\n // }`\n // ],\n template: `\n \n `,\n\n})\nexport class HomeComponent implements OnInit {\n totalPetCount: any;\n totalPetCount_Lost: any;\n totalPetCount_Found: any;\n totalCount: any;\n totalDogs: any;\n totalCats: any;\n MtotalCount: any;\n MtotalDogs: any;\n MtotalCats: any;\n LostpetDetailsList: any;\n FoundpetDetailsList: any;\n LostFoundpetDetailsList: any;\n alldatalist: any;\n OperationTypeID: any = 3;\n OperationTypeHeading: string;\n petImagePath = environment.apiBaseUrl + \"/Static/Images/\";\n avgRegesteredPetsPerDay: number;\n public valt: number;\n public finalt: number;\n public countvalue: boolean = false;\n submitted = false;\n page = 1;\n pageSize = 12;\n zoom: any = 13;\n searchForm: FormGroup;\n lat: any;//= 59.9138688;\n lng: any;//= 7.809007;\n radiousMils: any;\n minClusterSize = 50;\n options: Options = {\n floor: 0,\n ceil: 100\n };\n currentActiveTabFilter = null;\n sum = 6;\n array = [];\n direction = \"\";\n throttle = 1;\n scrollDistance = 1;\n private geoCoder;\n @ViewChild('search')\n private searchElementRef: ElementRef;\n\n scrollUpDistance = 2;\n\n subscription: Subscription;\n statusText: string;\n\n\n constructor(\n private pets: PetsService,\n private authenticationService: AuthenticationService,\n private alertService: AlertService,\n private formbuilder: FormBuilder,\n private mapsAPILoader: MapsAPILoader,\n private ngZone: NgZone,\n private router: Router,\n ) { }\n\n ngOnInit() {\n this.searchForm = this.formbuilder.group({\n SpeciesID: [],\n BreedID: [],\n Area: [''],\n lat: ['59.9138688'],\n lng: ['10.7522'],\n // lat: ['30.73333'],\n // lng: ['76.7794'],\n radiousDistance: ['10'],\n OperationTypeID: ['1']\n });\n\n\n // this.totalCount = \"600 000\";\n // this.totalCats = \"200 000\";\n // this.totalDogs = \"400 000\";\n // this.MtotalCount = \"600 000\";\n // this.MtotalCats = \"200 000\";\n // this.MtotalDogs = \"400 000\";\n\n\n\n //this.getFoundPets();\n\n this.mapsAPILoader.load().then(() => {\n this.geoCoder = new google.maps.Geocoder;\n\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\n types: []\n });\n autocomplete.addListener(\"place_changed\", () => {\n this.ngZone.run(() => {\n //get the place result\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\n\n //verify result\n // debugger;\n if (place.geometry === undefined || place.geometry === null) {\n return;\n }\n // this.searchForm.controls['Area'].patchValue(place.formatted_address)\n // this.searchForm.controls['lat'].patchValue(place.geometry.location.lat());\n // this.searchForm.controls['lng'].patchValue(place.geometry.location.lng());\n // debugger;\n //set latitude, longitude and zoom\n this.lat = place.geometry.location.lat();\n this.lng = place.geometry.location.lng();\n //this.zoom = 13;\n //localStorage.setItem('_searchFilters', JSON.stringify({ lat: this.lat, lng: this.lng, area: place.formatted_address, radiousDistance: this.searchForm.value.radiousDistance, OperationTypeID: this.OperationTypeID }))\n this.onSubmit();\n\n });\n });\n });\n\n\n\n this.mapsAPILoader.load().then(() => {\n // debugger;\n // this.lat = 59.9138688;\n // this.lng = 10.7522;\n this.setCurrentLocation();\n });\n \n this.authenticationService.GetDailyReportedPets().subscribe((res: any) => {\n if (res.Status == 1) {\n this.avgRegesteredPetsPerDay = res.Data.PetRegisteredPerDay;\n this.totalCount = new Number(res.Data.PetCount).toLocaleString(\"fi-FI\");\n\n var avgTimeToChangeTotalCount = (8 * 60 * 60) / (this.avgRegesteredPetsPerDay);\n\n const source = interval(avgTimeToChangeTotalCount * 1000);\n source.subscribe(val => this.updateTotalCount());\n }\n });\n\n this.authenticationService.GetListCount().pipe().subscribe(response => {\n\n this.totalCount = new Number(response.Data.TotalPets).toLocaleString(\"fi-FI\");\n this.totalDogs = new Number(response.Data.TotalDogs).toLocaleString(\"fi-FI\");\n this.totalCats = new Number(response.Data.TotalCats).toLocaleString(\"fi-FI\");\n this.MtotalCount = this.transform(response.Data.TotalPets,);\n this.MtotalDogs = this.transform(response.Data.TotalDogs,);\n this.MtotalCats = this.transform(response.Data.TotalCats,);\n });\n\n localStorage.removeItem('ListPageNo');\n localStorage.removeItem('ListView');\n localStorage.removeItem('SearchFilters');\n localStorage.removeItem('_calledFrom');\n\n window.addEventListener('scroll', this.handleScroll, true);\n\n }\n\n transform(number: number, args?: any): any {\n if (isNaN(number)) return null; // will only work value is a number\n if (number === null) return null;\n if (number === 0) return null;\n let abs = Math.abs(number);\n const rounder = Math.pow(10, 1);\n const isNegative = number < 0; // will also work for Negetive numbers\n let key = '';\n\n const powers = [\n { key: 'Q', value: Math.pow(10, 15) },\n { key: 'T', value: Math.pow(10, 12) },\n { key: 'B', value: Math.pow(10, 9) },\n { key: 'M', value: Math.pow(10, 6) },\n { key: 'K', value: 1000 }\n ];\n\n for (let i = 0; i < powers.length; i++) {\n let reduced = abs / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n abs = reduced;\n key = powers[i].key;\n break;\n }\n }\n //return (isNegative ? '-' : '') + abs + key;\n return ((isNegative ? '-' : '') + abs + key).replace(\".\", \",\");\n }\n\n handleScroll = (event) => {\n var distance = $('#main-div').offset().top;\n const navbar = document.getElementById(\"menu-div\");\n if (!navbar) return;\n if (distance < 0) {\n navbar.classList.add(\"sticky\")\n } else {\n navbar.classList.remove(\"sticky\");\n }\n }\n\n private setCurrentLocation() {\n this.mapsAPILoader.load().then(() => {\n if (\"geolocation\" in navigator) {\n //debugger;\n navigator.geolocation.getCurrentPosition((position) => {\n this.lat = position.coords.latitude;\n this.lng = position.coords.longitude;\n this.getLostPets(1, false);\n //this.getAddress(this.lat, this.lng);\n },\n () => {\n if (this.lat == 0 || this.lat == undefined || this.lat == null) {\n //debugger;\n this.lat = 59.9138688;\n this.lng = 10.7522;\n this.getLostPets(1, false);\n }\n // debugger;\n // this.lat = 0;\n // this.getAddress(0, 0);\n });\n }\n\n });\n\n this.getLostPets(1, false);\n // const searchFilter = JSON.parse(localStorage.getItem('_searchFilters'));\n // if (searchFilter) {\n // this.lat = searchFilter.lat;\n // this.lng = searchFilter.lng;\n // if (searchFilter.radiousDistance) this.searchForm.controls['radiousDistance'].patchValue(searchFilter.radiousDistance);\n // if (searchFilter.OperationTypeID) {\n // this.OperationTypeID = searchFilter.OperationTypeID;\n // this.searchForm.controls['OperationTypeID'].patchValue(searchFilter.OperationTypeID);\n // }\n\n //this.getAddress(this.lat, this.lng);\n\n // } else {\n // if (\"geolocation\" in navigator) {\n // navigator.geolocation.getCurrentPosition((position) => {\n // this.lat = position.coords.latitude;\n // this.lng = position.coords.longitude;\n // this.getAddress(this.lat, this.lng);\n // },\n // () => {\n // // debugger;\n // this.lat = 0;\n // this.getAddress(0, 0);\n // });\n // }\n // }\n\n }\n\n getAddress(latitude, longitude) {\n // debugger;\n if (latitude == 0) {\n this.getLostPets(this.page);\n }\n else {\n this.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\n // console.log(results);\n // console.log(\"status ??\");\n if (status === 'OK') {\n if (results[0]) {\n this.zoom = 13;\n // console.log(results[0].formatted_address);\n this.searchForm.controls['Area'].patchValue(results[0].formatted_address);\n\n this.getLostPets(this.page);\n } else {\n window.alert('No results found');\n }\n } else {\n window.alert('Geocoder failed due to: ' + status);\n }\n\n\n });\n }\n }\n\n\n getLostPets(page: number, isPagination?: boolean) {\n this.page = page;\n let startIndex = (this.page == 1) ? 0 : (page - 1) * 50;\n let endIndex = startIndex + 50;\n\n let filters = {\n \"startIndex\": startIndex,\n \"endIndex\": endIndex,\n \"lat\": this.lat,\n \"lng\": this.lng,\n \"radiousDistance\": this.searchForm.value.radiousDistance,\n \"operationTypeFliter\": 0,//this.currentActiveTabFilter == null ? 3 : this.currentActiveTabFilter,\n \"days\": 15\n }\n if (this.lat == 0) {\n\n let startIndex = (this.page == 1) ? 0 : (page - 1) * 25;\n let endIndex = startIndex + 25;\n\n let nullFilter = {\n \"startIndex\": startIndex,\n \"endIndex\": endIndex\n }\n\n this.pets.GetLandingPageLostPets_(nullFilter).subscribe(Response => {\n this.alldatalist = Response;\n this.totalPetCount_Lost = this.alldatalist.RecordsTotal;\n this.LostpetDetailsList = this.alldatalist.data;//.slice(0,Math.ceil(this.alldatalist.RecordsFiltered/2));//.slice(0,3);\n // this.FoundpetDetailsList = this.alldatalist.data.slice(3,6);\n });\n\n // this.pets.GetLandingPageFoundPets(nullFilter).subscribe(Response => {\n // this.alldatalist = Response;\n // this.totalPetCount_Found = this.alldatalist.RecordsTotal; \n // this.FoundpetDetailsList = this.alldatalist.data.slice(0,Math.ceil(this.alldatalist.RecordsFiltered/2));//.slice(3,6);\n // this.totalPetCount = this.totalPetCount_Lost + this.totalPetCount_Found;\n // });\n }\n else {\n\n //this.pets.GetLandingPageLostPets(filters).subscribe(Response => {\n if(!this.lat) return;\n this.pets.GetPetsForLandingPage(filters).subscribe(Response => {\n this.alldatalist = Response;\n // this.OperationTypeID = 3;\n this.totalPetCount = this.alldatalist.RecordsTotal;\n this.LostpetDetailsList = this.alldatalist.data;//.slice(0,Math.ceil(this.alldatalist.RecordsFiltered/2));\n //this.FoundpetDetailsList = this.alldatalist.data.slice(Math.ceil(this.alldatalist.RecordsFiltered/2),Math.ceil(this.alldatalist.RecordsFiltered));\n });\n }\n if (isPagination) this.scrollTop();\n }\n\n scrollTop = () => {\n const element = document.querySelector('#main-div');\n element.scrollIntoView({ behavior: 'smooth' });\n }\n\n public updateTotalCount() {\n this.valt = parseInt(this.totalCount.replace(/\\s/g, ''));\n\n var numvalue = (this.valt) + 1;\n var str = new Number(numvalue).toLocaleString(\"fi-FI\");\n this.totalCount = str;\n }\n public ChangeFilterData(event: any) {\n this.lat = event.coords.lat;\n this.lng = event.coords.lng;\n this.GetLandingPagePets(0, 1);\n }\n public GetLandingPagePets(FilterData: any, page: number) {\n // debugger;\n this.page = page;\n let startIndex = (this.page == 1) ? 0 : (page - 1) * 50;\n let endIndex = startIndex + 50;\n\n if (FilterData)\n this.OperationTypeID = FilterData;\n //localStorage.setItem('_searchFilters', JSON.stringify({ lat: this.lat, lng: this.lng, area: this.searchForm.value.Area, radiousDistance: this.searchForm.value.radiousDistance, OperationTypeID: this.OperationTypeID }))\n let LandingPagefilters = {\n \"startIndex\": startIndex,\n \"endIndex\": endIndex,\n \"lat\": this.lat,\n \"lng\": this.lng,\n \"radiousDistance\": this.searchForm.value.radiousDistance,\n \"operationTypeFliter\": 0,//FilterData == null ? 3 : FilterData,\n \"days\": 15\n }\n\n\n // if (FilterData == 1) {\n this.currentActiveTabFilter = 1;\n this.pets.GetPetsForLandingPage(LandingPagefilters).subscribe(Response => {\n\n this.alldatalist = Response;\n\n this.totalPetCount = this.alldatalist.RecordsTotal;\n //this.LostpetDetailsList= this.alldatalist.data;\n this.LostpetDetailsList = this.alldatalist.data;//.slice(0,Math.ceil(this.alldatalist.RecordsFiltered/2)); \n //this.FoundpetDetailsList = this.alldatalist.data.slice(Math.ceil(this.alldatalist.RecordsFiltered/2),this.alldatalist.RecordsFiltered);\n\n });\n\n }\n\n onSubmit() {\n localStorage.setItem('_searchFilters', JSON.stringify({ lat: this.lat, lng: this.lng, area: this.searchForm.value.Area, radiousDistance: this.searchForm.value.radiousDistance, OperationTypeID: this.OperationTypeID }))\n this.submitted = true;\n this.page = 1;\n let ListPageNo = localStorage.getItem('ListPageNo');\n if (ListPageNo) {\n this.page = Number(ListPageNo);\n }\n if (this.currentActiveTabFilter == null) {\n this.currentActiveTabFilter = 3;\n }\n if (this.lat != 0 && this.lat != null && this.lat != undefined)\n this.GetLandingPagePets(this.currentActiveTabFilter, this.page);\n\n }\n\n //go to pet details page\n goToPetDetails = (petDetail: any) => {\n const petName = `${petDetail.Color ? petDetail.Color : ''} ${petDetail.BreedsName ? petDetail.BreedsName : ''} ${petDetail.SpeciesName ? petDetail.SpeciesName : ''} ${(petDetail.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${petDetail.City ? petDetail.City : ''}`\n const urlString = petName.trim().toLowerCase().split(' ').join('-');\n const removeChar = urlString.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\");\n const encodedString = encodeURI(removeChar);\n const atobStr = btoa(petDetail.LostFoundID);\n localStorage.setItem('_page', 'home_page');\n const param = this.OperationTypeID == '3' ? { opType: '' } : { opType: this.OperationTypeID };\n this.router.navigate([`list-pets/pet-detail/${atobStr}/${encodedString}`], { queryParams: param });\n\n }\n\n ngOnDestroy() {\n window.removeEventListener('scroll', this.handleScroll, true);\n }\n\n}","
\r\n
\r\n
{{ 'Report Pets' | translate }}
\r\n

{{ 'Lost & Found' | translate }}

\r\n

{{ 'Cotainer string' | translate }}

\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n {{ totalCount }}\r\n {{ MtotalCount }}\r\n {{'ID-Marked Pets' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n {{ totalDogs }}\r\n {{ MtotalDogs }}\r\n {{'ID-Marked Dogs' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n {{ totalCats }}\r\n {{ MtotalCats }}\r\n {{'ID-Marked Cats' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Har du funnet et savnet dyr?

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

Har du funnet et savnet dyr?

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

{{'Latest Lost & Found in Norway' | translate}}

\r\n

{{'Latest Lost & Found in Norway string' | translate}}

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

{{'Latest Lost & Found in Norway' | translate}}

\r\n

{{'Latest Lost & Found in Norway string' | translate}}

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

{{'Latest Lost & Found in Norway' | translate}}

\r\n

{{'Latest Lost & Found in Norway string' | translate}}

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

Siste savnet og funnet i Norge

\r\n

Mitt Spor Lorem ipsum dolor sit amet, consectetur adipis cing elit. Sed et interdum ex. Mauris estue amei\r\n enim, convallis

\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n \"\"\r\n \"\"\r\n
\r\n \r\n
\r\n
\r\n
{{ ((petDetail.OperationTypeID == \"1\") ? 'Lost' : 'Found') |\r\n translate}} {{petDetail.Color +\" \"}}{{ petDetail.BreedsName +\" \"+\r\n petDetail.SpeciesName}} i {{petDetail.City}}\r\n
\r\n
{{ ((petDetail.OperationTypeID == \"1\") ? 'Lost' : 'Found') |\r\n translate}} {{petDetail.Color\r\n +\" \"}}{{ petDetail.BreedsName }} ({{petDetail.SpeciesName}}) i {{petDetail.City}}
\r\n \r\n

\"\"{{\r\n ((petDetail.Area == null) ? \"\" : petDetail.Area) +\" \"+ ((petDetail.ZipCode == null) ? \"\" :\r\n petDetail.ZipCode) +\" \"+((petDetail.City == null) ? \"\" : petDetail.City)}}

\r\n

\"\"\r\n{{((petDetail.City == null) ? \"\" : petDetail.City)}}

\r\n

\"\" {{ petDetail.DisplayLostFoundDate}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'angularx-social-login';\r\nimport { SocialUser } from 'angularx-social-login';\r\nimport { GoogleLoginProvider, FacebookLoginProvider } from 'angularx-social-login';\r\nimport { Router,ActivatedRoute } from '@angular/router';\r\nimport { Socialusers } from '../_models';\r\nimport { AuthenticationService } from '../_services';\r\nimport { environment } from '../../environments/environment';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\r\n response; \r\n socialusers = new Socialusers(); \r\n returnUrl: string;\r\n referUrl: string;\r\n referPage: string;\r\n currentUser: any;\r\n constructor(\r\n private authService: AuthService,\r\n private router: Router,\r\n private authenticationService:AuthenticationService,\r\n private route: ActivatedRoute,\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n this.referUrl = this.route.snapshot.queryParams['refer'];\r\n this.referPage = this.route.snapshot.queryParams['referPage'];\r\n if (this.referUrl == \"minside\"){\r\n if(localStorage[\"socialusers\"] == undefined || localStorage[\"socialusers\"] == null)\r\n {\r\n this.LoginWithMinside();\r\n }else{\r\n \r\n // User Logged IN \r\n this.currentUser = this.authenticationService.currentUserValue;\r\n \r\n var userProvider = this.currentUser.Provider.toLowerCase();\r\n var username = \"\";\r\n var email = this.currentUser.EmailID;\r\n if(email == null){\r\n username = this.currentUser.ContactNumber;\r\n }else{\r\n username = email.toLowerCase();\r\n }\r\n \r\n var flag = confirm(\"User (\"+ username+\") already logged in from (\"+userProvider+\"). Do you wanted to end Current Session ?\");\r\n if (flag){\r\n this.authenticationService.logout();\r\n this.router.navigate(['/login']);\r\n this.LoginWithMinside();\r\n }else {\r\n if((userProvider == 'facebook') || (userProvider == 'google')){\r\n this.router.navigate(['/']);\r\n }\r\n else{\r\n if(this.referPage == \"found\"){\r\n window.location.href = `${environment.lostFoundBaseUrl}/report-found`;\r\n }else{\r\n window.location.href = `${environment.lostFoundBaseUrl}/report-lost`;\r\n }\r\n }\r\n }\r\n \r\n \r\n \r\n }\r\n }\r\n \r\n\r\n this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/';\r\n if(localStorage[\"socialusers\"] != undefined || localStorage[\"socialusers\"] != null)\r\n {\r\n this.router.navigate([this.returnUrl]);\r\n }\r\n }\r\n\r\n public socialSignIn(socialProvider: string) { \r\n let socialPlatformProvider; \r\n if (socialProvider === 'facebook') { \r\n socialPlatformProvider = FacebookLoginProvider.PROVIDER_ID; \r\n } else if (socialProvider === 'google') { \r\n socialPlatformProvider = GoogleLoginProvider.PROVIDER_ID; \r\n } \r\n \r\n this.authService.signIn(socialPlatformProvider).then(user => { \r\n //console.log(socialProvider, user); \r\n //console.log(user); \r\n\r\n this.socialusers.SocialID = user.id;\r\n this.socialusers.FirstName = user.firstName;\r\n this.socialusers.LastName = user.lastName;\r\n this.socialusers.EmailID = user.email;\r\n this.socialusers.AuthToken = user.authToken;\r\n this.socialusers.Provider = user.provider;\r\n\r\n this.Savesresponse(this.socialusers); \r\n }); \r\n } \r\n Savesresponse(socialusers: Socialusers) { \r\n this.authenticationService.login(socialusers).subscribe((res: any) => { \r\n this.socialusers = res.data; \r\n localStorage.setItem('socialusers', JSON.stringify( this.socialusers)); \r\n this.router.navigate([this.returnUrl]); \r\n }) \r\n } \r\n\r\n LoginWithMinside(){\r\n \r\n if(this.referPage != null){\r\n var minsideUrl = environment.urlMinsideLogin + '&referPage='+this.referPage;\r\n }else{\r\n var minsideUrl = environment.urlMinsideLogin ;\r\n }\r\n var popup = window.open(`${minsideUrl}`, \"Popup\", \"width=400,height=400\");\r\n popup.open();\r\n }\r\n signOut(): void {\r\n this.authenticationService.logout();\r\n this.router.navigate(['/login']);\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
{{ 'Sign-In' | translate }}
\r\n

{{ 'Lost & Found' | translate }}

\r\n

{{ 'Cotainer string' | translate }}

\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { OwnerService } from '../_services/owner.service';\nimport { AuthenticationService } from '../_services';\nimport { Socialusers } from '../_models';\nimport { environment } from '../../environments/environment';\n\n@Component({\n selector: 'app-minside-auth-callback',\n templateUrl: './minside-auth-callback.component.html',\n styleUrls: ['./minside-auth-callback.component.scss']\n})\nexport class MinsideAuthCallbackComponent implements OnInit {\n\n constructor(private activatedRoute: ActivatedRoute, \n private ownerService : OwnerService, \n private authenticationService:AuthenticationService,\n private router: Router,\n private route: ActivatedRoute,) { }\n\n userToken : string;\n socialusers = new Socialusers(); \n referPage : string;\n ngOnInit(): void {\n \n this.referPage = this.activatedRoute.snapshot.params['referPage'];\n this.userToken = this.activatedRoute.snapshot.params['id'];\n \n this.GetAuthTokenByUserToken(this.userToken);\n }\n\n GetAuthTokenByUserToken(uToken : string){\n this.ownerService.getOwnerAuthToken(uToken).subscribe((res: any) => { \n \n if (res.Status == 1){\n this.socialusers.SocialID = res.Data.Id;\n this.socialusers.FirstName = res.Data.FirstName;\n this.socialusers.LastName = res.Data.LastName;\n this.socialusers.EmailID = res.Data.Email;\n this.socialusers.Address = res.Data.Address;\n this.socialusers.Zipcode = res.Data.ZipCode;\n this.socialusers.City = res.Data.City;\n this.socialusers.AuthToken = res.Data.AuthToken;\n this.socialusers.Provider = res.Data.Provider;\n this.socialusers.ContactNumber = res.Data.ContactNumber;\n this.socialusers.District = res.Data.District;\n this.socialusers.State = res.Data.StateName;\n this.socialusers.Country= res.Data.CountryName\n this.Savesresponse(this.socialusers);\n }\n else{\n alert(\"User Token is expired. Please login with Minside again\");\n this.router.navigate(['/login']);\n }\n }) \n }\n Savesresponse(socialusers: Socialusers) { \n this.authenticationService.login(socialusers).subscribe((res: any) => { \n this.socialusers = res.data; \n localStorage.setItem('socialusers', JSON.stringify( this.socialusers)); \n if(this.referPage == \"found\"){\n window.opener.location.href = `${environment.lostFoundBaseUrl}/report-found`;\n window.close();\n } else{\n window.opener.location.href = `${environment.lostFoundBaseUrl}/report-lost`;\n window.close();\n }\n \n \n }); \n } \n}\n","

\n Please wait currently signin the user........\n

\n","import { Component, OnInit } from '@angular/core';\nimport { PetsService } from '../../_services';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { environment } from '../../../environments/environment';\nimport { Meta, Title } from '@angular/platform-browser';\nimport { ShareService } from '@ngx-share/core';\nimport { FacebookService, UIParams, UIResponse, InitParams } from 'ngx-facebook';\nimport { jsPDF } from \"jspdf\";\nimport html2canvas from 'html2canvas';\n\n@Component({\n selector: 'app-detail',\n templateUrl: './detail.component.html',\n styleUrls: ['./detail.component.scss']\n})\n\nexport class DetailComponent implements OnInit {\n\n public lat: number;\n public lng: number;\n public zoom: number;\n public showhideBackButton: boolean;\n public showhomePageBrowseListing: boolean;\n public petType: string = 'current';\n public isPreviousDisabled: boolean = false;\n public isNextDisabled: boolean = false;\n public qrCodeString: string = '';\n public currentUser: any = null;\n public petName = '';\n public calledFrom = '';\n public operationTypeID: string = '';\n public searchFilters: any = null;\n\n\n constructor(\n private Pets: PetsService,\n private router: ActivatedRoute,\n private meta: Meta,\n private title: Title,\n private routeObj: Router,\n public share: ShareService,\n private fb: FacebookService\n ) {\n this.qrCodeString = window.location.href;\n }\n\n\n petImagePath = environment.apiBaseUrl + \"/Static/Images/\";\n LostFoundPetID;\n pet;\n detailMessageString = environment.lostFoundBaseUrl + \"dashboard/pet-detail?PetID=\";\n detailMessageStringEMail = \"Les mer : \" + environment.lostFoundBaseUrl + \"dashboard/pet-detail?PetID=\";\n ShareMessage: string;\n public petListany: any = [];\n\n ngOnInit(): void {\n this.currentUser = JSON.parse(localStorage.getItem('currentUser'));\n this.calledFrom = localStorage.getItem('_calledFrom');\n this.searchFilters = JSON.parse(localStorage.getItem('SearchFilters'));\n //console.log(this.currentUser)\n this.LostFoundPetID = atob(this.router.snapshot.paramMap.get('petId'));\n this.operationTypeID = this.router.snapshot.queryParamMap.get('opType');\n if (this.calledFrom == 'home') {\n this.showhomePageBrowseListing = true;\n }\n else {\n this.showhomePageBrowseListing = false;\n }\n //console.log(this.operationTypeID)\n this.getPetDetails();\n this.showhideBackButton = true;\n var currenturl = window.location.href;\n // if(currenturl.toLowerCase().indexOf('report-lost') > 0 || currenturl.toLocaleLowerCase().indexOf('report-found') > 0 || currenturl.toLocaleLowerCase().indexOf('dashboard') > 0 ){\n if (currenturl.toLowerCase().indexOf('report-lost') > 0 || currenturl.toLocaleLowerCase().indexOf('report-found') > 0) {\n this.showhideBackButton = false;\n }\n this.ShareMessage = '';\n }\n\n getPetDetails = () => {\n this.isPreviousDisabled = false;\n this.isNextDisabled = false;\n const page = localStorage.getItem('_page');\n const userId = (page && page === 'dashboard') ? this.currentUser.ID : '';\n let parameters: any = {\n userId: userId,\n LostFoundPetID: this.LostFoundPetID,\n type: this.petType,\n OperationTypeID: this.operationTypeID\n }\n\n if (page && page === 'list_page') {\n parameters.lat = this.searchFilters.lat;\n parameters.lng = this.searchFilters.lng;\n parameters.radiousDistance = this.searchFilters.radiousDistance;\n parameters.BreedID = this.searchFilters.BreedID;\n parameters.SpeciesID = this.searchFilters.SpeciesID;\n parameters.page = page;\n } else {\n parameters.lat = '';\n parameters.lng = '';\n parameters.radiousDistance = '';\n parameters.BreedID = '';\n parameters.SpeciesID = '';\n parameters.page = '';\n }\n\n if (this.calledFrom == 'home') {\n if (this.petType == 'next') {\n this.petListany = this.Pets.fetchListData();\n for (let i = 0; i < this.petListany.length; i++) {\n if (this.LostFoundPetID == this.petListany[i].ChipId) {\n if (i == this.petListany.length - 1)\n this.isNextDisabled = true;\n else\n this.LostFoundPetID = this.petListany[i + 1].ChipId;\n break;\n }\n }\n }\n else if (this.petType == 'previous') {\n this.petListany = this.Pets.fetchListData();\n for (let i = 0; i < this.petListany.length; i++) {\n if (this.LostFoundPetID == this.petListany[i].ChipId) {\n if (i == 0)\n this.isPreviousDisabled = true;\n else\n this.LostFoundPetID = this.petListany[i - 1].ChipId;\n break;\n }\n }\n }\n this.Pets.getChipInfo(this.LostFoundPetID).subscribe(response => {\n\n let titleContent = '';\n if (response) {\n this.pet = response;\n this.qrCodeString = window.location.href;\n const petName = `${this.pet.PetColor ? this.pet.PetColor : ''} ${this.pet.Breed ? this.pet.Breed : ''} ${this.pet.Species ? this.pet.Species : ''} ${(this.pet.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${this.pet.City ? this.pet.City : ''}`\n this.petName = petName;\n\n this.lat = Number(parameters.lat);\n this.lng = Number(parameters.lng);\n this.zoom = 15;\n let subtext = '';\n if (response.OperationTypeID == 1) {\n subtext = 'Tapt';\n } else if (response.OperationTypeID == 2) {\n subtext = \"Funnet\";\n }\n\n // let HairType ='';\n if (response.HairType == 1) {\n this.pet.HairType = 'Langhåret';\n } else if (response.HairType == 2) {\n this.pet.HairType = \"Korthåret\";\n }\n this.pet.Gender = response.PetSex;\n if (this.pet.BirthDate && this.pet.BirthMonth && this.pet.BirthYear)\n this.pet.BirthDate = this.pet.BirthDate + '.' + this.pet.BirthMonth + '.' + this.pet.BirthYear;\n let color = '';\n if (response.PetColor) {\n color = response.PetColor + \" \";\n }\n if (!this.pet.PetOriginalPhoto) {\n if (parameters.SpeciesID == 1)\n this.pet.PetOriginalPhoto = \"assets/img/home/lost-animl-bg.png\";\n else\n this.pet.PetOriginalPhoto = \"assets/img/home/homepet_cat.png\";\n }\n if (this.pet.PetOriginalPhoto) {\n const img = new Image();\n img.src = this.pet.PetOriginalPhoto;\n img.onerror = () => {\n if (parameters.SpeciesID == 1)\n this.pet.PetOriginalPhoto = \"assets/img/home/lost-animl-bg.png\";\n else\n this.pet.PetOriginalPhoto = \"assets/img/home/homepet_cat.png\";\n };\n }\n if (!this.pet.PetPhoto) {\n if (parameters.SpeciesID == 1)\n this.pet.PetPhoto = \"assets/img/home/lost-animl-bg.png\";\n else\n this.pet.PetPhoto = \"assets/img/home/homepet_cat.png\";\n }\n if (this.pet.PetPhoto) {\n const img = new Image();\n img.src = this.pet.PetPhoto;\n img.onerror = () => {\n if (parameters.SpeciesID == 1)\n this.pet.PetPhoto = \"assets/img/home/lost-animl-bg.png\";\n else\n this.pet.PetPhoto = \"assets/img/home/homepet_cat.png\";\n };\n }\n let city = '';\n if (response.City) {\n city = response.City;\n }\n if (response.Breed) {\n this.ShareMessage = this.ShareMessage + color + response.Breed + \" (\" + response.Species + \") \" + subtext + \" | \" + city;\n } else {\n this.ShareMessage = this.ShareMessage + color + response.Species + \" \" + subtext + \" | \" + city\n }\n this.ShareMessage = this.ShareMessage ? this.ShareMessage.replace(/^\\s+|\\s+$/gm, '') : '';\n // this.meta.addTags([\n // { name: 'og:title', content: this.ShareMessage },\n // { name: 'og:description', content: response.AdditionalInfo },\n // { name: 'og:image', content: this.petImagePath + response.ImagePath },\n // ]);\n\n } else {\n if (this.petType === 'previous') {\n this.isPreviousDisabled = true;\n } else if (this.petType === 'next') {\n this.isNextDisabled = true;\n }\n }\n this.title.setTitle(this.ShareMessage);\n\n })\n }\n else {\n this.Pets.GetLostFoundPetDetailsByID(parameters).subscribe(response => {\n let titleContent = '';\n if (response) {\n this.pet = response;\n this.qrCodeString = window.location.href;\n const petName = `${this.pet.Color ? this.pet.Color : ''} ${this.pet.MasterBreed ? this.pet.MasterBreed : ''} ${this.pet.MasterSpecies ? this.pet.MasterSpecies : ''} ${(this.pet.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${this.pet.City ? this.pet.City : ''}`\n this.petName = petName;\n if (this.petType !== 'current') {\n const urlString = petName.trim().toLowerCase().split(' ').join('-');\n const encodedString = encodeURI(urlString);\n const atobStr = btoa(this.pet.LostFoundID)\n this.routeObj.navigate([`list-pets/pet-detail/${atobStr}/${encodedString}`]);\n this.LostFoundPetID = response.LostFoundID;\n }\n\n this.lat = Number(response.lat);\n this.lng = Number(response.lng);\n this.zoom = 15;\n\n\n let subtext = '';\n if (response.OperationTypeID == 1) {\n subtext = 'Tapt';\n } else if (response.OperationTypeID == 2) {\n subtext = \"Funnet\";\n }\n\n // let HairType ='';\n if (response.HairType == 1) {\n this.pet.HairType = 'Langhåret';\n } else if (response.HairType == 2) {\n this.pet.HairType = \"Korthåret\";\n }\n if (!this.pet.ShowChipNoToOthers)\n this.pet.ChipID = \"\";\n if (response.Gender == 1) {\n this.pet.Gender = 'Hunndyr';\n } else if (response.Gender == 2) {\n this.pet.Gender = 'Hunn';\n }\n\n let color = '';\n if (response.Color) {\n color = response.Color + \" \";\n }\n let city = '';\n if (response.City) {\n city = response.City;\n }\n if (response.MasterBreed) {\n this.ShareMessage = this.ShareMessage + color + response.MasterBreed + \" (\" + response.MasterSpecies + \") \" + subtext + \" | \" + city;\n } else {\n this.ShareMessage = this.ShareMessage + color + response.MasterSpecies + \" \" + subtext + \" | \" + city\n }\n this.ShareMessage = this.ShareMessage ? this.ShareMessage.replace(/^\\s+|\\s+$/gm, '') : '';\n // this.meta.addTags([\n // { name: 'og:title', content: this.ShareMessage },\n // { name: 'og:description', content: response.AdditionalInfo },\n // { name: 'og:image', content: this.petImagePath + response.ImagePath },\n // ]);\n\n } else {\n if (this.petType === 'previous') {\n this.isPreviousDisabled = true\n } else if (this.petType === 'next') {\n this.isNextDisabled = true\n }\n }\n this.title.setTitle(this.ShareMessage);\n\n })\n }\n }\n\n openModal(event) {\n document.getElementById(event.currentTarget.parentElement.nextElementSibling.id).style.display = \"flex\";\n }\n\n closeModal(event) {\n document.getElementById(event.currentTarget.parentElement.id).style.display = \"none\";\n }\n\n shareWithFacebook(id): void {\n let shareUrl = this.detailMessageString + id;\n //shareUrl = 'https://lostfound.staging.dyreid.no/pet-detail?PetID=1099';\n let url = 'http://www.facebook.com/sharer.php?u=' + shareUrl;\n let newwindow = window.open(url, 'name', 'height=500,width=520,top=200,left=300,resizable');\n if (window.focus) {\n newwindow.focus()\n }\n }\n\n goBack() {\n const page = localStorage.getItem('_page');\n if (page && page === 'list_page') {\n this.routeObj.navigate(['/list-pets'], { queryParams: { OperationTypeID: 1, radiousDistance: 10 } });\n } else if (page && page === 'dashboard') {\n this.routeObj.navigate(['/dashboard']);\n } else if (page && page === 'report-found') {\n this.routeObj.navigate(['/report-found']);\n } else if (page && page === 'report-lost') {\n this.routeObj.navigate(['/report-lost']);\n } else {\n this.routeObj.navigate(['/']);\n }\n\n }\n\n printPDF() {\n // const printContent = document.getElementById(\"containerID\");\n // document.getElementById(\"qr-code\").style.display = 'block';\n // const printRemoveContent = document.getElementById(\"ThumbnailImageBlockID\");\n // const WindowPrt = window.open('', '', 'left=0,top=0,width=900,height=900,toolbar=0,scrollbars=0,status=0');\n // var html = printContent.innerHTML.replace(printRemoveContent.innerHTML, \"\");\n // // WindowPrt.document.write(printContent.innerHTML);\n // WindowPrt.document.write(html);\n // WindowPrt.document.close();\n // WindowPrt.focus();\n // WindowPrt.print();\n // WindowPrt.close();\n // document.getElementById(\"qr-code\").style.display = 'none';\n this.generatePDF();\n \n }\n\n generatePDF() {\n var data = document.getElementById('print-me');\n data.style.display = 'block';\n html2canvas(data, {allowTaint: true, useCORS: true}).then(canvas => {\n var imgWidth = 208;\n var imgHeight = canvas.height * imgWidth / canvas.width;\n const contentDataURL = canvas.toDataURL('image/png')\n let pdf = new jsPDF('p', 'mm', 'a4');\n var position = 0;\n pdf.addImage(contentDataURL, 'PNG', 0, position, imgWidth, imgHeight)\n pdf.save(this.pet.PetName);\n setTimeout(() => {\n data.style.display = 'none'\n // window.close();\n }, 500)\n\n });\n }\n\n previousItem = () => {\n this.petType = 'previous';\n this.getPetDetails();\n }\n\n nextItem = () => {\n this.petType = 'next';\n this.getPetDetails();\n }\n\n onSwipe = (e) => {\n if (e.type === \"swiperight\") {\n this.previousItem();\n } else {\n this.nextItem();\n }\n }\n\n shareOnFacebook() {\n\n const currentUrl = window.location.href;\n const imgUrl = this.pet.ThumbnailImagePath ? this.petImagePath + this.pet.ThumbnailImagePath : this.petImagePath + this.pet.ImagePath;\n const desc = this.pet.AdditionalInfo ? this.pet.AdditionalInfo : this.petName;\n console.log('currentUrl: ', currentUrl);\n console.log('imgUrl: ', imgUrl);\n console.log('desc: ', desc);\n this.meta.addTags([\n { name: 'og:url', content: currentUrl },\n { name: 'og:title', content: 'THIS IS NEW TITLE!!' },\n { name: 'og:description', content: desc },\n { name: 'og:image', content: imgUrl },\n ]);\n // this.meta.updateTag({ name: 'title', content: 'THIS IS NEW TITLE!!' })\n const initParams: InitParams = {\n appId: '2770853809663369',\n xfbml: true,\n version: 'v2.8'\n };\n this.fb.init(initParams).then(success => {\n console.log('START: ', success);\n const params: UIParams = {\n href: 'https://lostfound.staging.dyreid.no/list-pets/pet-detail/NTU3Nw%3D%3D/amerikansk-cocker-spaniel-hund-tapt-i-chandigarh',\n method: 'share'\n };\n\n this.fb.ui(params)\n .then((res: UIResponse) => console.log('RES : ', res))\n .catch((e: any) => console.log('ERROR : ', e));\n }).catch(err => {\n console.log('ERROR: ', err);\n });\n\n }\n\n errorHandler = (e) => {\n\t\te.target.src = environment.placeholderImg;\n\t}\n\n\n}\n\ninterface Ipetdetalils {\n LostFoundID: number;\n UserLoginID: number;\n IsChipped: string;\n ChipID: string;\n OperationTypeID: number;\n PetName: string;\n PetType: string;\n SpeciesID?: number;\n MasterSpecies: string;\n BreedID?: number;\n MasterBreed: string;\n Gender: string;\n Casted: string;\n DateOfBirth?: string;\n DisplayDateOfBirth: string;\n LostFoundDate?: string;\n DisplayLostFoundDate: string;\n DisplayUpdatedDate: string;\n Area: string;\n Commune: string;\n City: string;\n State: string;\n StateID?: number;\n Country: string;\n Company: String;\n CountryID?: number;\n AdditionalInfo: string;\n ImageID?: number;\n ImagePath: string;\n ThumbImagePath: string;\n Color: string;\n CoatLength: string;\n Description: string;\n lat: string;\n lng: string;\n DistancePoint: string;\n OwnerContactEmail: string;\n IsReunite: boolean;\n CreatedDate: string;\n CreatedBy: string;\n UpdatedDate: string;\n UpdatedBy: string;\n Status: boolean;\n}","
\n
\n
\n
\n
\n
\n \n

\n {{pet.Color +\" \"}}{{ pet.MasterSpecies}} {{ ((pet.OperationTypeID == \"1\") ?\n 'Lost' : 'Found')| translate }} i {{pet.City}}\n \n\n \n

\n
\n
\n \n

\n {{pet.Color +\" \"}}{{pet.MasterBreed }} ({{pet.MasterSpecies}}) {{\n ((pet.OperationTypeID == \"1\") ? 'Lost' : 'Found') | translate}} i\n {{pet.City}}\n \n \n

\n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n ×\n
\n \n
\n
\n
\n\n\n
\n\n
\n
\n
\n \n \n \n\n
\n \n {{\"Name\" | translate }}: {{pet.PetName}}\n
\n\n
\n \n {{\"Chip ID\" | translate }}: {{pet.ChipID}}\n
\n\n
\n \n \n {{\"Area\"| translate }}: \n \n {{pet.Area}}\n \n {{' '+pet.ZipCode +' '+ pet.City}} \n \n \n
\n\n
\n \n \n {{\"Lost/Found\"| translate }}:\n {{pet.DisplayLostFoundDate}} \n \n \n \n \n {{\"Last Updated\"| translate }}:\n {{pet.DisplayUpdatedDate}}\n \n
\n\n\n\n
\n \n \n {{ pet.userEmailID}} \n \n \n {{ pet.userContactNumber}} \n \n
\n\n
\n \n \n \n \n \n \n
\n\n\n
\n
\n\n
\n
\n \n
\n
\n
\n

{{\"Additional Info\" | translate}}

\n
\n
\n
\n

{{pet.AdditionalInfo}}

\n
\n
\n
\n
\n
\n
\n
\n

{{\"Specifications\" | translate }}

\n
\n
\n
\n {{\"Species\" | translate }} {{pet.MasterSpecies}}\n
\n
\n {{\"Breed\" | translate }} {{pet.MasterBreed}}\n
\n
\n {{ 'Gender' | translate }} {{ pet.Gender}}\n
\n
\n {{ 'HairType' | translate }} {{ pet.HairType}}\n
\n
\n\n
\n
\n {{\"Color\" | translate }} {{pet.Color}}\n
\n
\n {{\"Birth Date\" | translate }} {{pet.DisplayDateOfBirth}}\n
\n
\n {{\"Identification\" | translate }} {{pet.PetName}}\n
\n
\n {{\"Company\" | translate }} {{pet.Company}}\n
\n
\n
\n
\n
\n
\n
\n

{{'Location on map' | translate}}

\n
\n
\n \n \n \n
\n
\n
\n\n \n
\n
\n
\n
\n \n {{ pet.userEmailID}}\n \n \n {{ pet.userContactNumber}}\n \n
\n\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n

\n {{pet.PetColor +\" \"}}{{ pet.Breed}} {{ 'in your neighbourhood | translate' }}\n \n\n \n

\n
\n
\n \n

\n {{pet.PetColor +\" \"}}{{pet.Breed }} ({{pet.Species }}) {{\n 'in your neighbourhood' | translate}} \n \n \n

\n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n ×\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n\n
\n \n {{\"Name\" | translate }}: {{pet.PetName}}\n
\n\n
\n \n \n {{\"Area\"| translate }}: \n \n {{pet.AddressLine1}}\n \n {{' '+pet.ZipCode +' '+ pet.City}} \n \n \n
\n
\n \n {{ pet.OwnerFullName}}\n \n \n {{ pet.PrimaryTelephoneNo}}\n \n
\n\n
\n \n \n \n \n \n
\n\n\n
\n
\n\n
\n
\n
\n
\n
\n

{{\"Additional Info\" | translate}}

\n
\n
\n
\n

{{pet.AdditionalInfo}}

\n
\n
\n
\n
\n
\n
\n
\n

{{\"Specifications\" | translate }}

\n
\n
\n
\n {{\"Species\" | translate }} {{pet.Species}}\n
\n
\n {{\"Breed\" | translate }} {{pet.Breed}}\n
\n
\n {{ 'Gender' | translate }} {{ pet.PetSex}}\n
\n
\n\n
\n
\n {{\"Color\" | translate }} {{pet.PetColor}}\n
\n
\n {{\"Birth Date\"| translate }} {{pet.BirthDate}}\n
\n
\n {{\"Identification\" | translate }} {{pet.PetName}}\n
\n
\n {{\"Company\" | translate }} {{pet.ClinicName}}\n
\n
\n
\n
\n
\n
\n
\n

{{'Location on map' | translate}}

\n
\n
\n \n \n \n
\n
\n
\n\n \n
\n
\n
\n
\n \n {{ pet.PrimaryEmail}}\n \n \n {{ pet.PrimaryTelephoneNo}}\n \n
\n\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\"\"
\n
Katt funnet
\n
\n \n
\n \n \n \n \n \n
{{\"Name\" | translate }}{{pet?.PetName}}\n
\n
\n \n \n \n \n \n
{{\"Breed\" | translate }}\n {{pet?.MasterBreed}}
\n
\n \n \n \n\n \n \n
{{ ((pet?.OperationTypeID == \"1\") ?\n 'Lost' : 'Found')| translate }}\n {{pet?.DisplayLostFoundDate}}
\n
\n \n \n \n \n \n
{{\"Gender\" | translate}}{{pet?.Gender}}\n
\n
\n \n \n \n \n \n
{{\"Area\" | translate}}{{pet?.Area}}\n
\n
\n \n \n \n \n \n
{{\"HairType\" | translate}}{{\n pet?.HairType}}
\n
\n \n \n \n \n \n
{{\"Address\" | translate}}\n {{pet?.AddressLine1}} {{' '+pet?.ZipCode +' '+ pet?.City}}
\n
\n \n \n \n \n \n
{{\"Color\" | translate}} {{pet?.Color}}\n
\n
\n {{\"Additional Info\" | translate}}
{{pet?.AdditionalInfo}}
{{\"History\" | translate}}
\n
\n
\n
{{\"Contact\" | translate}}:
\n
{{pet?.userContactNumber}}
\n
\n
\n \"\" {{pet?.userContactNumber}}
\n
\n
\n
\n \n \n
\n
\n Scan QR-koden for å gå
\n til annonsen på
\n dyrebar.no.\n
\n
\n \n Dyrebar.no/{{pet?.LostFoundID}}\n
\n
\n \n
Følg dyreid.no
\n \"\" \n \"\" \n \"\" \n
\n
","import { Component, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { ReportLostComponent } from '../report/lost/lost.component';\nimport { ReportFoundComponent } from '../report/found/found.component';\n\n@Component({\n selector: 'app-dialog',\n templateUrl: './dialog.component.html',\n styleUrls: ['./dialog.component.scss']\n})\nexport class DialogComponent{\n\n constructor(\n public dialogReportLost: MatDialogRef,\n public dialogReportFound: MatDialogRef,\n ) {}\n\n ngOnInit(): void {\n }\n\n CloseDialogPopup(): void {\n this.dialogReportLost.close();\n this.dialogReportFound.close();\n }\n}\n","

{{'Contact Reporter'| translate }}

\n
\n \n

Needs String :Your Contact detail will be sent to the selected person's email. He will contact you by the details given by you.

\n \n \n \n \n
\n
\n \n
","import { Component, OnInit, ViewChild, ElementRef, NgZone, Inject } from '@angular/core';\r\nimport { PetsService } from '../../_services';\r\nimport { MapsAPILoader } from '@agm/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { environment } from '../../../environments/environment';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { DOCUMENT, Location } from '@angular/common';\r\nimport { Options } from 'ng5-slider';\r\nimport * as $ from 'jquery'\r\n\r\n@Component({\r\n\tselector: 'app-list',\r\n\ttemplateUrl: './list.component.html',\r\n\tstyleUrls: ['./list.component.scss']\r\n})\r\n\r\nexport class ListComponent implements OnInit {\r\n\r\n\tconstructor(\r\n\t\tprivate pets: PetsService,\r\n\t\tprivate activatedRoute: ActivatedRoute,\r\n\t\tprivate router: Router,\r\n\t\tprivate formbuilder: FormBuilder,\r\n\t\tprivate mapsAPILoader: MapsAPILoader,\r\n\t\tprivate ngZone: NgZone,\r\n\t\tprivate location: Location,\r\n\t) { }\r\n\r\n\tsearchForm: FormGroup;\r\n\tMapView = true;\r\n\tGridView = false;\r\n\thideLostFoundDetail = false;\r\n\tOperationTypeID: any = \"1\";\r\n\tMasterSpecies: any;\r\n\tMasterBreeds: any;\r\n\tpetImagePath = environment.apiBaseUrl + \"/Static/Images/\";\r\n\tpetDetailPath = environment.apiBaseUrl + \"/pet-detail?PetID=\";\r\n\tpetList: any;\r\n\tsubmitted = false;\r\n\tpage = 1;\r\n\tpageSize = 12;\r\n\tprivate geoCoder;\r\n\t@ViewChild('search')\r\n\tprivate searchElementRef: ElementRef;\r\n\ttotalCount: any;\r\n\ttotalLost: any;\r\n\ttotalFound: any;\r\n\ttotalReUnite: any;\r\n\tcalledFrom: string = \"\";\r\n\tqueryParams: any;\r\n\toptions: Options = {\r\n\t\tfloor: 0,\r\n\t\tceil: 100\r\n\t};\r\n\tpetDetailsList: any[];\r\n\r\n\t// google maps zoom level\r\n\tzoom: any = 13;\r\n\r\n\t// initial center position for the map\r\n\tlat: any;\r\n\tlng: any;\r\n\tradiousMils: any;\r\n\tminClusterSize = 50;\r\n\ttabActive: number = 1;\r\n\tPets: any = {};\r\n\r\n\tngOnInit() {\r\n\t\t// window.addEventListener('scroll', this.handleScroll, true);\r\n\t\tthis.searchForm = this.formbuilder.group({\r\n\t\t\tSpeciesID: [''],\r\n\t\t\tBreedID: [''],\r\n\t\t\tArea: [''],\r\n\t\t\tlat: [''],\r\n\t\t\tlng: [''],\r\n\t\t\tradiousDistance: ['10'],\r\n\t\t\tOperationTypeID: ['1']\r\n\t\t});\r\n\r\n\t\t$(document).ready(function () {\r\n\t\t\t$('#showmenu').click(function () {\r\n\t\t\t\t$('.mbl-fliterdropw').slideToggle(\"fast\");\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\t$(document).ready(function () {\r\n\t\t\t$('#gobtnclk').click(function () {\r\n\t\t\t\t$('.mbl-fliterdropw').hide();\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\t$(document).ready(function () {\r\n\t\t\t$('.mbllist-map-filter .icon-view.map-icn').click(function () {\r\n\t\t\t\t$('.mbllist-map-filter .icon-view.list-icn').show();\r\n\t\t\t\t$('.mbllist-map-filter .icon-view.map-icn').hide();\r\n\t\t\t});\r\n\t\t\t$('.mbllist-map-filter .icon-view.list-icn').click(function () {\r\n\t\t\t\t$('.mbllist-map-filter .icon-view.map-icn').show();\r\n\t\t\t\t$('.mbllist-map-filter .icon-view.list-icn').hide();\r\n\t\t\t});\r\n\t\t});\r\n\r\n\r\n\t\tconst firstElementWithError = document.querySelector('.xng-breadcrumb-root');\r\n\t\tthis.scrollTo(firstElementWithError);\r\n\t\t//load Places Autocomplete\r\n\t\tthis.mapsAPILoader.load().then(() => {\r\n\r\n\t\t\tthis.geoCoder = new google.maps.Geocoder;\r\n\r\n\t\t\tlet autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n\t\t\t\ttypes: []\r\n\t\t\t});\r\n\t\t\tautocomplete.addListener(\"place_changed\", () => {\r\n\t\t\t\tthis.ngZone.run(() => {\r\n\t\t\t\t\t//get the place result\r\n\t\t\t\t\tlet place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n\t\t\t\t\t//verify result\r\n\t\t\t\t\tif (place.geometry === undefined || place.geometry === null) {\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.searchForm.controls['Area'].patchValue(place.formatted_address)\r\n\t\t\t\t\tthis.searchForm.controls['lat'].patchValue(place.geometry.location.lat());\r\n\t\t\t\t\tthis.searchForm.controls['lng'].patchValue(place.geometry.location.lng());\r\n\r\n\t\t\t\t\t//set latitude, longitude and zoom\r\n\t\t\t\t\tthis.lat = place.geometry.location.lat();\r\n\t\t\t\t\tthis.lng = place.geometry.location.lng();\r\n\t\t\t\t\tthis.zoom = 13;\r\n\t\t\t\t\tlocalStorage.setItem('ListPageNo', \"\");\r\n\t\t\t\t\tthis.onSubmit();\r\n\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t});\r\n\t\tlet ListView = 'Map';\r\n\t\tListView = localStorage.getItem('ListView');\r\n\t\tif (ListView) {\r\n\t\t\tthis.GridView = (ListView == 'List') ? true : false;\r\n\t\t\tthis.MapView = (ListView == 'Map') ? true : false;\r\n\t\t}\r\n\r\n\t\tthis.queryParams = this.activatedRoute.snapshot.queryParams;\r\n\t\tif ((this.queryParams.callingFrom == \"home\" || localStorage.getItem('_calledFrom') == \"home\") && this.queryParams.callingFrom !== \"menu\") {\r\n\t\t\tthis.hideLostFoundDetail = true;\r\n\t\t}\r\n\t\tthis.calledFrom = this.queryParams.callingFrom;\r\n\t\tlet SearchFilters = localStorage.getItem('SearchFilters');\r\n\t\tif (SearchFilters) {\r\n\t\t\tthis.queryParams = JSON.parse(SearchFilters);\r\n\t\t}\r\n\r\n\t\tthis.pets.getSpecies().subscribe(species => {\r\n\t\t\t//if calling from home show dog and cat only in thr species dropdown\r\n\t\t\tthis.MasterSpecies = this.queryParams.callingFrom == \"home\" ? [{ Text: \"Dog\", Value: 1 }, { Text: \"Cat\", Value: 2 }] : species;\r\n\t\t\tif (this.queryParams.speciesId) {\r\n\t\t\t\tthis.searchForm.controls['SpeciesID'].patchValue(Number(this.queryParams.speciesId))\r\n\t\t\t\tthis.tabActive = this.queryParams.speciesId;\r\n\t\t\t\tthis.getBreeds();\r\n\t\t\t\tthis.Pets = {\r\n\t\t\t\t\tpetName: this.queryParams.speciesId == 1 ? \"Dogs\" : \"Cats\"\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (this.queryParams.SpeciesID) {\r\n\t\t\t\tthis.searchForm.controls['SpeciesID'].patchValue(Number(this.queryParams.SpeciesID))\r\n\t\t\t\tthis.tabActive = this.queryParams.SpeciesID;\r\n\t\t\t\tthis.getBreeds();\r\n\t\t\t\tthis.Pets = {\r\n\t\t\t\t\tpetName: this.queryParams.SpeciesID == 1 ? \"Dogs\" : \"Cats\"\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t\tif (this.queryParams.lat) {\r\n\t\t\tthis.searchForm.controls['lat'].patchValue(this.queryParams.lat)\r\n\t\t\tthis.searchForm.controls['lng'].patchValue(this.queryParams.lng)\r\n\t\t\tthis.lat = Number(this.queryParams.lat);\r\n\t\t\tthis.lng = Number(this.queryParams.lng);\r\n\t\t\tthis.mapsAPILoader.load().then(() => {\r\n\t\t\t\tthis.zoom = 13;\r\n\t\t\t\tthis.getAddress(Number(this.queryParams.lat), Number(this.queryParams.lng));\r\n\t\t\t});\r\n\t\t}\r\n\t\tthis.searchForm.controls['radiousDistance'].patchValue(10);\r\n\t\tif (this.queryParams.radiousDistance) {\r\n\t\t\tthis.searchForm.controls['radiousDistance'].patchValue(this.queryParams.radiousDistance)\r\n\t\t}\r\n\t\tthis.searchForm.controls['OperationTypeID'].patchValue(\"1\")\r\n\t\tif (this.queryParams.OperationTypeID) {\r\n\t\t\tthis.searchForm.controls['OperationTypeID'].patchValue(this.queryParams.OperationTypeID)\r\n\t\t\tthis.OperationTypeID = this.queryParams.OperationTypeID;\r\n\t\t}\r\n\t\tthis.searchForm.controls['Area'].patchValue(\"\")\r\n\t\tif (this.queryParams.Area) {\r\n\t\t\tthis.searchForm.controls['Area'].patchValue(this.queryParams.Area)\r\n\t\t}\r\n\r\n\t\tif (this.queryParams.radiousDistance) {\r\n\t\t\tthis.radiousMils = this.queryParams.radiousDistance;\r\n\t\t}\r\n\t\tif (!this.queryParams.lat || this.queryParams.lat == '') {\r\n\t\t\tlet self = this;\r\n\t\t\tnavigator.permissions.query({ name: 'geolocation' }).then(function (result) {\r\n\t\t\t\tif (result.state === 'granted') {\r\n\t\t\t\t\tself.mapsAPILoader.load().then(() => {\r\n\t\t\t\t\t\tself.setCurrentLocation();\r\n\t\t\t\t\t});\r\n\t\t\t\t} else if (result.state === 'prompt' || result.state === 'denied') {\r\n\t\t\t\t\twindow.alert(\"GPS Is turned off or Location access permission denied\");\r\n\t\t\t\t}\r\n\t\t\t\t// Don't do anything if the permission was denied.\r\n\t\t\t});\r\n\r\n\t\t}\r\n\t}\r\n\r\n\t// handleScroll = (event) => {\r\n\t// \tconsole.log(event.srcElement.scrollTop)\r\n\t// }\r\n\r\n\tscrollPosition = (e: HTMLElement) => {\r\n\t\t// console.log('HERE')\r\n\t\t// this.pageScrollService.scroll({\r\n\t\t// \tdocument: this.documentD,\r\n\t\t// \tscrollTarget: '.theEnd',\r\n\t\t// \t// scrollOffset:100\r\n\t\t// });\r\n\t}\r\n\r\n\tformatLabel(value: number) {\r\n\t\tthis.radiousMils = value;\r\n\t\treturn value;\r\n\t}\r\n\r\n\tinfoWindowOpened = null\r\n\tprevious_info_window = null\r\n\r\n\tmarkers: marker[] = [\r\n\t\t{\r\n\t\t\tlat: 51.673858,\r\n\t\t\tlng: 7.815982,\r\n\t\t\tdraggable: true\r\n\t\t}\r\n\t]\r\n\r\n\tclose_window() {\r\n\t\tif (this.previous_info_window != null) {\r\n\t\t\tif(this.previous_info_window)this.previous_info_window.close()\r\n\t\t}\r\n\t}\r\n\r\n\tclickedMarker(label: string, index: number, infoWindow) {\r\n\t\t// console.log(this)\r\n\r\n\t\tif (this.previous_info_window == null)\r\n\t\t\tthis.previous_info_window = infoWindow;\r\n\t\telse {\r\n\t\t\tthis.infoWindowOpened = infoWindow\r\n\t\t\tif(this.previous_info_window)this.previous_info_window.close()\r\n\t\t}\r\n\t\tthis.previous_info_window = infoWindow\r\n\r\n\t\t// console.log(`clicked the marker: ${label || index}`)\r\n\t}\r\n\r\n\tonSubmit() {\r\n\t\tthis.submitted = true;\r\n\t\tthis.page = 1;\r\n\t\tthis.zoom = (Math.round(14 - Math.log(this.searchForm.value.radiousDistance) / Math.LN2)) + 1;\r\n\t\tthis.OperationTypeID = this.searchForm.value.OperationTypeID;\r\n\t\tif (this.searchForm.invalid) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tlet ListPageNo = localStorage.getItem('ListPageNo');\r\n\t\tif (ListPageNo) {\r\n\t\t\tthis.page = Number(ListPageNo);\r\n\t\t}\r\n\t\tif (this.GridView) {\r\n\t\t\tthis.getFilterPetsGrid(this.page);\r\n\t\t}\r\n\t\tif (this.MapView) {\r\n\t\t\tthis.getFilterPetsMap();\r\n\t\t}\r\n\r\n\t\t//\tthis.location.replaceState('/asd');\r\n\r\n\t}\r\n\r\n\ttoggleCluster() {\r\n\t\tthis.minClusterSize = (this.minClusterSize < 5) ? 50 : 2;\r\n\t\t// console.log('toggleCluster minClusterSize = ' + this.minClusterSize);\r\n\t}\r\n\r\n\tprivate setCurrentLocation() {\r\n\t\tif (\"geolocation\" in navigator) {\r\n\t\t\tnavigator.geolocation.getCurrentPosition((position) => {\r\n\t\t\t\tthis.lat = position.coords.latitude;\r\n\t\t\t\tthis.lng = position.coords.longitude;\r\n\t\t\t\t// this.zoom = 13;\r\n\t\t\t\tthis.zoom = (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) ? 11 : 13;\r\n\r\n\t\t\t\t(this.MapView) ? this.showMapView() : this.showGridView();\r\n\t\t\t\tthis.getAddress(this.lat, this.lng);\r\n\t\t\t});\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tpublic showGridView() {\r\n\t\tthis.GridView = true;\r\n\t\tthis.MapView = false;\r\n\t\tlocalStorage.setItem('ListView', (this.MapView) ? 'Map' : 'List');\r\n\t\tlet ListPageNo = localStorage.getItem('ListPageNo');\r\n\t\tif (ListPageNo) {\r\n\t\t\tthis.page = Number(ListPageNo);\r\n\t\t}\r\n\t\tthis.getFilterPetsGrid(this.page);\r\n\t}\r\n\r\n\tpublic showMapView() {\r\n\t\tthis.MapView = true;\r\n\t\tthis.GridView = false;\r\n\t\tlocalStorage.setItem('ListView', (this.MapView) ? 'Map' : 'List');\r\n\t\tthis.getFilterPetsMap();\r\n\t}\r\n\r\n\tgetBreeds() {\r\n\t\tthis.tabActive = (this.searchForm.value.SpeciesID == 1 || this.searchForm.value.SpeciesID == 2) ? this.searchForm.value.SpeciesID : 3\r\n\r\n\t\tthis.searchForm.controls['BreedID'].patchValue(\"\");\r\n\t\tlocalStorage.setItem('ListPageNo', \"\");\r\n\t\tthis.Pets = {\r\n\t\t\tpetName: this.queryParams.SpeciesID == 1 || this.searchForm.value.SpeciesID == 1 ? \"Dogs\" : \"Cats\"\r\n\t\t}\r\n\t\tthis.pets.getBreeds(this.searchForm.value.SpeciesID).subscribe(breeds => {\r\n\t\t\tthis.MasterBreeds = breeds;\r\n\t\t\tif (this.queryParams.BreedID && this.searchForm.value.SpeciesID == this.queryParams.SpeciesID) {\r\n\t\t\t\tthis.searchForm.controls['BreedID'].patchValue(Number(this.queryParams.BreedID))\r\n\t\t\t\tthis.onSubmit();\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tthis.onSubmit();\r\n\t\t\t}\r\n\r\n\t\t});\r\n\r\n\t\t//this.getFilterPetsGrid();\r\n\t}\r\n\r\n\tgetFilterPetsGrid(page: number, isPagination?: boolean) {\r\n\t\tthis.page = page;\r\n\t\tlet filters = {};\r\n\t\tlet startIndex = (this.page == 1) ? 0 : (page - 1) * 10;\r\n\t\tlet endIndex = startIndex + 10;\r\n\t\tif ((this.calledFrom == \"home\" || localStorage.getItem('_calledFrom') == \"home\") && this.calledFrom !== \"menu\") {\r\n\t\t\tfilters = {\r\n\t\t\t\t\"Radius\": this.searchForm.value.radiousDistance,\r\n\t\t\t\t\"latitude\": this.lat,\r\n\t\t\t\t\"longitude\": this.lng,\r\n\t\t\t\t\"petName\": \"\",\r\n\t\t\t\t\"SpeciesID\": this.searchForm.value.SpeciesID == undefined || this.searchForm.value.SpeciesID == \"\" ? this.queryParams.speciesId : this.searchForm.value.SpeciesID,\r\n\t\t\t\t\"BreedID\": this.searchForm.value.BreedID == \"\" ? null : this.searchForm.value.BreedID,\r\n\t\t\t\t\"LanguageId\": 2,\r\n\t\t\t\t\"PageSize\": 10,\r\n\t\t\t\t\"PageNumber\": this.page\r\n\t\t\t}\r\n\t\t\tthis.pets.GetLostFoundPetsListfromMincide(filters).subscribe(response => {\r\n\t\t\t\tthis.petList = response;\r\n\t\t\t\tthis.totalCount = this.petList.Data.RecordsTotal;\r\n\t\t\t\tthis.petDetailsList = this.petList.Data.data;\r\n\t\t\t\tif (this.petDetailsList.length > 0) {\r\n\t\t\t\t\tfor (let i = 0; i <= this.petDetailsList.length - 1; i++) {\r\n\t\t\t\t\t\tif (!this.petDetailsList[i].ThumbImagePath)\r\n\t\t\t\t\t\t\tthis.petDetailsList[i].ThumbImagePath = \"assets/img/home/lost-animl-bg.png\";\r\n\t\t\t\t\t\tif (!this.petDetailsList[i].ImagePath)\r\n\t\t\t\t\t\t\tthis.petDetailsList[i].ImagePath = \"assets/img/home/lost-animl-bg.png\";\r\n\t\t\t\t\t\tif (this.petDetailsList[i].ThumbImagePath) {\r\n\t\t\t\t\t\t\tconst img = new Image();\r\n\t\t\t\t\t\t\timg.src = this.petDetailsList[i].ThumbImagePath;\r\n\t\t\t\t\t\t\timg.onerror = () => {\r\n\t\t\t\t\t\t\t\tthis.petDetailsList[i].ThumbImagePath = \"assets/img/home/lost-animl-bg.png\";\r\n\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (this.petDetailsList[i].ImagePath) {\r\n\t\t\t\t\t\t\tconst img = new Image();\r\n\t\t\t\t\t\t\timg.src = this.petDetailsList[i].ImagePath;\r\n\t\t\t\t\t\t\timg.onerror = () => {\r\n\t\t\t\t\t\t\t\tthis.petDetailsList[i].ImagePath = \"assets/img/home/lost-animl-bg.png\";\r\n\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tthis.pets.assignListData(this.petDetailsList);\r\n\t\t\t\tif (isPagination) this.scrollTop();\r\n\t\t\t});\r\n\t\t\tlocalStorage.setItem('ListPageNo', this.page.toString());\r\n\t\t}\r\n\t\telse {\r\n\t\t\tfilters = {\r\n\t\t\t\t\"startIndex\": startIndex,\r\n\t\t\t\t\"endIndex\": endIndex,\r\n\t\t\t\t\"latitude\": this.lat,\r\n\t\t\t\t\"longitude\": this.lng,\r\n\t\t\t\t\"radiousMils\": this.searchForm.value.radiousDistance,\r\n\t\t\t\t\"OperationTypeID\": this.searchForm.value.OperationTypeID,\r\n\t\t\t\t\"SpeciesID\": this.searchForm.value.SpeciesID,\r\n\t\t\t\t\"BreedID\": this.searchForm.value.BreedID\r\n\t\t\t}\r\n\t\t\tthis.pets.GetLostFoundPetsList(filters).subscribe(response => {\r\n\t\t\t\t// console.log(response)\r\n\t\t\t\t// console.log(response.totalCount)\r\n\t\t\t\tthis.totalLost = response.TotalLost;\r\n\t\t\t\tthis.totalFound = response.TotalFound;\r\n\t\t\t\tthis.totalReUnite = response.TotalReUnite;\r\n\t\t\t\tthis.totalCount = response.RecordsTotal;\r\n\t\t\t\tthis.petDetailsList = response.data;\r\n\t\t\t\tthis.pets.assignListData([]);\r\n\t\t\t\tif (isPagination) this.scrollTop();\r\n\t\t\t});\r\n\t\t\tlocalStorage.setItem('ListPageNo', this.page.toString());\r\n\t\t}\r\n\t}\r\n\r\n\tscrollTop = () => {\r\n\t\tconst element = document.querySelector('#scrollId');\r\n\t\telement.scrollIntoView({ behavior: 'smooth' });\r\n\t}\r\n\r\n\tgetFilterPetsMap() {\r\n\t\t// console.log(this.radiousMils);\r\n\t\tlet filters = {};\r\n\t\tif ((this.calledFrom == \"home\" || localStorage.getItem('_calledFrom') == \"home\") && this.calledFrom !== \"menu\") {\r\n\t\t\tfilters = {\r\n\t\t\t\t\"Radius\": this.searchForm.value.radiousDistance,\r\n\t\t\t\t\"latitude\": this.lat,\r\n\t\t\t\t\"longitude\": this.lng,\r\n\t\t\t\t\"petName\": \"\",\r\n\t\t\t\t\"SpeciesID\": this.searchForm.value.SpeciesID == undefined || this.searchForm.value.SpeciesID == \"\" ? this.queryParams.speciesId : this.searchForm.value.SpeciesID,\r\n\t\t\t\t\"BreedID\": this.searchForm.value.BreedID == \"\" ? null : this.searchForm.value.BreedID,\r\n\t\t\t\t\"LanguageId\": 2,\r\n\t\t\t\t\"PageSize\": 10000000,\r\n\t\t\t\t\"PageNumber\": this.page\r\n\t\t\t}\r\n\t\t\tthis.pets.GetLostFoundPetsListfromMincide(filters).subscribe(res => {\r\n\t\t\t\tthis.petList = res;\r\n\t\t\t\tthis.petList.Data.data.forEach(function (element) {\r\n\t\t\t\t\tif (element.SpeciesId == 2)\r\n\t\t\t\t\t\telement.petIcon = \"assets/img/location-caticon.png\";\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\telement.petIcon = \"assets/img/location-dogicon.png\";\r\n\t\t\t\t});\r\n\t\t\t\t//this.petList.Data.data.petIcon=\"assets/img/home/home_pet1.png\";\r\n\t\t\t\t// if (this.petList.RecordsFiltered > 0) {\r\n\t\t\t\t//this.totalLost = this.petList.TotalLost;\r\n\t\t\t\t//this.totalFound = this.petList.TotalFound;\r\n\t\t\t\t//this.totalReUnite = this.petList.TotalReUnite;\r\n\t\t\t\tthis.markers = this.petList.Data.data;\r\n\t\t\t\tthis.totalCount = this.petList.Data.RecordsTotal;\r\n\t\t\t\t// console.log(this.markers);\r\n\t\t\t\t// }\r\n\t\t\t});\r\n\t\t}\r\n\t\telse {\r\n\t\t\tfilters = {\r\n\t\t\t\t\"lat\": this.lat,\r\n\t\t\t\t\"lng\": this.lng,\r\n\t\t\t\t\"radiousDistance\": this.searchForm.value.radiousDistance,\r\n\t\t\t\t\"OperationTypeID\": this.searchForm.value.OperationTypeID,\r\n\t\t\t\t\"SpeciesID\": this.searchForm.value.SpeciesID,\r\n\t\t\t\t\"BreedID\": this.searchForm.value.BreedID\r\n\t\t\t}\r\n\t\t\tthis.pets.GetLostFoundPetsListPartialFields(filters).subscribe(res => {\r\n\t\t\t\tthis.petList = res;\r\n\t\t\t\tthis.petList.data.forEach(function (element) {\r\n\t\t\t\t\tif (element.SpeciesName == \"Hund\")\r\n\t\t\t\t\t\telement.petIcon = \"assets/img/location-dogicon.png\";\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\telement.petIcon = \"assets/img/location-caticon.png\";\r\n\t\t\t\t});\r\n\t\t\t\t// if (this.petList.RecordsFiltered > 0) {\r\n\t\t\t\tthis.totalLost = this.petList.TotalLost;\r\n\t\t\t\tthis.totalFound = this.petList.TotalFound;\r\n\t\t\t\tthis.totalReUnite = this.petList.TotalReUnite;\r\n\t\t\t\tthis.markers = this.petList.data,\r\n\t\t\t\t\tthis.totalCount = this.petList.RecordsFiltered;\r\n\t\t\t\t// console.log(this.markers);\r\n\t\t\t\t// }\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tgetAddress(latitude, longitude) {\r\n\t\tconst localArea = JSON.parse(localStorage.getItem('_locArea'));\r\n\t\t//if same lat lng dont need to call geocoder api again\r\n\t\tif(localArea && localArea.lat == latitude && localArea.lng == longitude) {\r\n\t\t\tthis.searchForm.controls['Area'].patchValue(localArea.area);\r\n\t\t\tthis.searchForm.controls['lat'].patchValue(latitude);\r\n\t\t\tthis.searchForm.controls['lng'].patchValue(longitude);\r\n\t\t\t(this.MapView) ? this.showMapView() : this.showGridView();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\r\n\t\t\tif (status === 'OK') {\r\n\t\t\t\tif (results[0]) {\r\n\t\t\t\t\tthis.zoom = 11;\r\n\t\t\t\t\t// console.log(results[0].formatted_address);\r\n\t\t\t\t\tthis.searchForm.controls['Area'].patchValue(results[0].formatted_address);\r\n\t\t\t\t\tthis.searchForm.controls['lat'].patchValue(latitude);\r\n\t\t\t\t\tthis.searchForm.controls['lng'].patchValue(longitude);\r\n\t\t\t\t\tconst locObject = {lat:latitude, lng:longitude, area:results[0].formatted_address};\r\n\t\t\t\t\tlocalStorage.setItem('_locArea', JSON.stringify(locObject));\r\n\r\n\t\t\t\t\t(this.MapView) ? this.showMapView() : this.showGridView();\r\n\t\t\t\t} else {\r\n\t\t\t\t\twindow.alert('No results found');\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\twindow.alert('Geocoder failed due to: ' + status);\r\n\t\t\t}\r\n\r\n\t\t});\r\n\t}\r\n\r\n\topenModal(event) {\r\n\t\tdocument.getElementById(event.currentTarget.parentElement.nextElementSibling.id).style.display = \"block\";\r\n\t}\r\n\r\n\tcloseModal(event) {\r\n\t\tdocument.getElementById(event.currentTarget.parentElement.id).style.display = \"none\";\r\n\t}\r\n\r\n\tresetSearchFilters() {\r\n\t\tthis.OperationTypeID = \"1\";\r\n\t\tthis.searchForm.controls.Area.reset();\r\n\t\tthis.searchForm.controls['OperationTypeID'].patchValue(\"1\")\r\n\t\tif(this.queryParams.callingFrom == \"home\"){\r\n\t\t\tthis.searchForm.controls.SpeciesID.patchValue(this.queryParams.speciesId);\r\n\t\t}else{\r\n\t\t\tthis.searchForm.controls.SpeciesID.patchValue('');\r\n\t\t}\r\n\t\tthis.searchForm.controls.BreedID.patchValue('');\r\n\t\t// this.searchForm.controls.lat = this.lat;\r\n\t\t// this.searchForm.controls.lng = this.lng;\r\n\t\tlocalStorage.setItem(\"SearchFilters\", \"\");\r\n\t\tthis.setCurrentLocation();\r\n\t\tif(this.queryParams.value)this.queryParams.value = \"\";\r\n\t\tthis.onSubmit();\r\n\t\tthis.router.navigate(['/list-pets'], { queryParams: { OperationTypeID: this.OperationTypeID, radiousDistance: 10 } });\r\n\t\t//this.router.navigate([this.router.url]);\r\n\r\n\t}\r\n\r\n\tSearchPetByType(SearchPetID: any) {\r\n\t\tif (SearchPetID == 1) {\r\n\t\t\tthis.tabActive = 1;\r\n\t\t\tthis.searchForm.controls['SpeciesID'].patchValue(1);\r\n\t\t\tthis.getBreeds();\r\n\t\t} else if (SearchPetID == 2) {\r\n\t\t\tthis.tabActive = 2;\r\n\t\t\tthis.searchForm.controls['SpeciesID'].patchValue(2);\r\n\t\t\tthis.getBreeds();\r\n\r\n\t\t} else if (SearchPetID == 3) {\r\n\t\t\tthis.tabActive = 3;\r\n\t\t\tthis.searchForm.controls['SpeciesID'].patchValue('');\r\n\t\t\tthis.searchForm.controls['BreedID'].patchValue('');\r\n\t\t}\r\n\t\tthis.onSubmit()\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\t//Called once, before the instance is destroyed.\r\n\t\t//Add 'implements OnDestroy' to the class.\r\n\t\tlocalStorage.setItem('SearchFilters', JSON.stringify(this.searchForm.value));\r\n\t}\r\n\r\n\tchangeOperationType(id, event: any) {\r\n\t\tlocalStorage.setItem('ListPageNo', \"\");\r\n\t\tthis.totalCount = '';\r\n\t\tthis.searchForm.controls['OperationTypeID'].patchValue(id)\r\n\t\tvar els = document.querySelectorAll('.active-stat');\r\n\t\tfor (var i = 0; i < els.length; i++) {\r\n\t\t\tels[i].classList.remove('active-stat')\r\n\t\t}\r\n\t\tevent.srcElement.classList.add(\"active-stat\");\r\n\t\tthis.onSubmit();\r\n\t}\r\n\r\n\tscrollTo(el: Element): void {\r\n\t\tif (el) {\r\n\t\t\tel.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n\t\t}\r\n\t}\r\n\r\n\t//go to pet details page\r\n\tgoToPetDetails = (petDetail: any) => {\r\n\t\tlet atobStr: string = \"\";\r\n\t\tconst petName = this.calledFrom == \"home\" || localStorage.getItem('_calledFrom') == 'home' ? `${petDetail.Color ? petDetail.Color : ''} ${petDetail.BreedsName ? petDetail.BreedsName : ''} ${petDetail.SpeciesName ? petDetail.SpeciesName : ''} ${'i ditt nærområde'}` : `${petDetail.Color ? petDetail.Color : ''} ${petDetail.MasterBreed ? petDetail.MasterBreed : ''} ${petDetail.MasterSpecies ? petDetail.MasterSpecies : ''} ${(this.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${petDetail.City ? petDetail.City : ''}`;\r\n\t\tconst petNameWithoutChar = petName.replace(/[^a-zA-Z ]/g, \"\");\r\n\t\tconst urlString = petNameWithoutChar.trim().toLowerCase().split(' ').join('-');\r\n\t\tconst removeChar = urlString.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\");\r\n\t\tconst encodedString = encodeURI(removeChar);\r\n\t\tif ((this.calledFrom == \"home\" || localStorage.getItem('_calledFrom') == 'home') && this.calledFrom !== \"menu\") {\r\n\t\t\tatobStr = btoa(petDetail.ChipId);\r\n\t\t\tlocalStorage.setItem('_calledFrom', 'home');\r\n\t\t}\r\n\t\telse {\r\n\t\t\tatobStr = btoa(petDetail.LostFoundID);\r\n\t\t\tlocalStorage.setItem('_calledFrom', '');\r\n\t\t}\r\n\t\tlocalStorage.setItem('_page', 'list_page');\r\n\t\tthis.router.navigate([`list-pets/pet-detail/${atobStr}/${encodedString}`], { queryParams: { opType: this.OperationTypeID } });\r\n\r\n\t}\r\n\r\n\terrorHandler = (e) => {\r\n\t\te.target.src = environment.placeholderImg;\r\n\t}\r\n\r\n}\r\n\r\n\r\n// just an interface for type safety.\r\ninterface marker {\r\n\tlat: number;\r\n\tlng: number;\r\n\tlabel?: string;\r\n\tdraggable?: boolean;\r\n\tLostFoundID?: number;\r\n\tUserLoginID?: number;\r\n\tOperationTypeID?: number;\r\n\tPetName?: string;\r\n\tDateOfBirth?: string;\r\n\tImagePath?: string;\r\n\tCity?: string;\r\n\tMasterSpecies?: string;\r\n\tMasterBreed?: string;\r\n\tColor?: string;\r\n}\r\n\r\n\r\ninterface Ipetdetalils {\r\n\tLostFoundID: number;\r\n\tUserLoginID: number;\r\n\tIsChipped: string;\r\n\tChipID: string;\r\n\tOperationTypeID: number;\r\n\tPetName: string;\r\n\tPetType: string;\r\n\tSpeciesID?: number;\r\n\tMasterSpecies: string;\r\n\tBreedID?: number;\r\n\tMasterBreed: string;\r\n\tGender: string;\r\n\tCasted: string;\r\n\tDateOfBirth?: string;\r\n\tDisplayDateOfBirth: string;\r\n\tLostFoundDate?: string;\r\n\tDisplayLostFoundDate: string;\r\n\tArea: string;\r\n\tCommune: string;\r\n\tCity: string;\r\n\tState: string;\r\n\tStateID?: number;\r\n\tCountry: string;\r\n\tCountryID?: number;\r\n\tAdditionalInfo: string;\r\n\tImageID?: number;\r\n\tImagePath: string;\r\n\tThumbnailImagePath: string;\r\n\tColor: string;\r\n\tCoatLength: string;\r\n\tDescription: string;\r\n\tlat: string;\r\n\tlng: string;\r\n\tDistancePoint: string;\r\n\tOwnerContactEmail: string;\r\n\tIsReunite: boolean;\r\n\tCreatedDate: string;\r\n\tCreatedBy: string;\r\n\tUpdatedDate: string;\r\n\tUpdatedBy: string;\r\n\tStatus: boolean;\r\n}","
\r\n
\r\n
\r\n
\r\n
\r\n
\"search-icon\"
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{ 'Lost' | translate }} {{ 'Pets' | translate }}

\r\n

{{ 'Found' | translate }} {{ 'Pets' | translate }}

\r\n

{{ 'Re-Unite' | translate }} {{ 'Pets' | translate }}

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

{{'No Pets Found' | translate }}

\r\n

0\">{{'Total ' | translate}} {{totalCount}} {{'Pets' | translate }}

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

{{'' | translate}}\r\n {{ 'Lost' | translate }} \r\n {{ 'Found' | translate }} \r\n {{ 'Re-Unite' | translate }} \r\n {{'pets within' | translate}} {{ searchForm.value.radiousDistance }} km\r\n

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

\r\n {{Pets.petName | translate}} {{'in your area' | translate}}\r\n \r\n\r\n

\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
{{ totalLost }} {{'Lost' | translate}}
\r\n
{{ totalFound }} {{'Found' | translate}}
\r\n
{{ totalReUnite }} {{'Re-Unite'| translate}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{'No matching records found' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n ×\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n {{petDetail.Color +\"\r\n \"}}{{ petDetail.MasterBreed +\" \"+ petDetail.MasterSpecies}} {{ ((OperationTypeID ==\r\n \"1\") ? 'Lost' : 'Found')| translate}} i\r\n {{petDetail.City}}\r\n {{petDetail.Color +\"\r\n \"}}{{ petDetail.MasterBreed }} ({{petDetail.MasterSpecies}}) {{ ((OperationTypeID\r\n == \"1\") ? 'Lost' : 'Found') | translate}} i\r\n {{petDetail.City}}\r\n
\r\n \r\n

{{ (petDetail.Area == null) ? \"\" : petDetail.Area }} {{ ((petDetail.ZipCode == null) ? \"\" : petDetail.ZipCode) +\" \"+((petDetail.City == null) ? \"\" : petDetail.City)}}

\r\n

{{ ((OperationTypeID == \"1\") ? 'Lost' : 'Found') | translate}} {{ 'Date' | translate\r\n }}: {{ petDetail.DisplayLostFoundDate}}

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

{{'No matching records found' | translate}}

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \"Image\"\r\n
\r\n \"Image\"\r\n
\r\n\r\n\r\n \r\n {{m.Color +\" \" }}{{ m.BreedsName +\" \"+ m.SpeciesName}} {{\r\n ((OperationTypeID == \"1\") ? 'Lost' : 'Found')| translate}} i\r\n {{m.City}}\r\n \r\n {{m.Color +\" \"}}{{ m.BreedsName }} ({{m.SpeciesName}}) {{\r\n ((OperationTypeID == \"1\") ? 'Lost' : 'Found') | translate }} i\r\n {{m.City}}\r\n\r\n
\r\n
{{ ((OperationTypeID == \"1\") ? 'Missing' : 'Found')| translate}}:\r\n
\r\n
{{ m.DisplayLostFoundDate }}
\r\n
\r\n
\r\n
{{ 'Last Updated' | translate }}:
\r\n
{{ m.DisplayUpdatedDate }}
\r\n\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{'No matching records found' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n ×\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n {{petDetail.Color +\"\r\n \"}}{{ petDetail.BreedsName +\" \"+ petDetail.SpeciesName}} i\r\n {{petDetail.City}}\r\n {{petDetail.Color +\"\r\n \"}}{{ petDetail.BreedsName }} ({{petDetail.SpeciesName}}) i\r\n {{petDetail.City}}\r\n
\r\n \r\n\r\n

{{ (petDetail.Country == null) ? \"\" : petDetail.Country }} 

\r\n

{{ ((petDetail.ZipCode == null) ? \"\" : petDetail.ZipCode) +\" \"+((petDetail.City == null) ? \"\" :\r\n petDetail.City)}}

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

{{'No matching records found' | translate}}

\r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \"Image\"
\r\n \"Image\"
\r\n\r\n\r\n \r\n {{m.Color +\" \" }}{{ m.BreedsName +\" \"+ m.SpeciesName}}\r\n i{{m.City}}\r\n \r\n {{m.Color +\" \"}}{{ m.BreedsName }} ({{m.SpeciesName}})\r\n i{{m.City}}\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-pets',\n templateUrl: './pets.component.html',\n styleUrls: ['./pets.component.scss']\n})\nexport class PetsComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Pets } from '../../../_models';\r\nimport { Router } from '@angular/router';\r\nimport { PetsService } from '../../../_services';\r\nimport { AuthenticationService } from '../../../_services';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { DialogComponent } from '../../dialog/dialog.component';\r\nimport { NgxSpinnerService } from \"ngx-spinner\";\r\n\r\n@Component({\r\n selector: 'app-found',\r\n templateUrl: './found.component.html',\r\n styleUrls: ['./found.component.scss']\r\n})\r\nexport class ReportFoundComponent implements OnInit {\r\n\r\n showFoundSuggestion: boolean = false;\r\n public showPersonalInfo: boolean = false;\r\n public petsinfo: any;\r\n public personalsinfo: any;\r\n private petDetails = { petDetails: {}, Image: {} };\r\n pets = new Pets();\r\n petsSuggestion: any;\r\n currentUser: any;\r\n petImagePath = environment.apiBaseUrl + \"/Static/Images/\";\r\n petDetailPath = environment.apiBaseUrl + \"/pet-detail?PetID=\";\r\n\r\n constructor(\r\n private router: Router,\r\n private petsService: PetsService,\r\n private authenticationService: AuthenticationService,\r\n public dialog: MatDialog,\r\n public SpinnerService: NgxSpinnerService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.currentUser = this.authenticationService.currentUserValue;\r\n localStorage.removeItem('ListPageNo');\r\n localStorage.removeItem('ListView');\r\n localStorage.removeItem('SearchFilters');\r\n }\r\n\r\n onPosted(data) {\r\n if (data) {\r\n if (data.SearchFilters) {\r\n // console.log(data.SearchFilters);\r\n this.petsService.GetLostFoundPetsListPartialFields(data.SearchFilters).subscribe(res => {\r\n this.petsSuggestion = res;\r\n if (this.petsSuggestion.RecordsFiltered == 0) {\r\n this.petsSuggestion = \"\"\r\n }\r\n });\r\n }\r\n\r\n if (data.IsChipped) {\r\n this.petsinfo = data;\r\n this.showPersonalInfo = true\r\n }\r\n if (data.FirstName) {\r\n this.personalsinfo = data;\r\n let Image = this.petsinfo.ImagePath;\r\n let croppedFileData = this.petsinfo.croppedFileData;\r\n this.petsinfo.MasterSpeciesID = parseInt(this.petsinfo.MasterSpeciesID)\r\n this.petsinfo.MasterBreedID = parseInt(this.petsinfo.MasterBreedID)\r\n this.petsinfo.ImagePath = \"\";\r\n this.petsinfo.croppedFileData = \"\";\r\n this.petsinfo.DateOfBirth = \"\";\r\n this.petsinfo.IsChipped = (this.petsinfo.IsChipped == \"1\") ? 1 : 0;\r\n this.petsinfo.OperationTypeID = 2;\r\n this.petsinfo.UserLoginID = this.currentUser.ID;\r\n this.personalsinfo.LoginUserID = this.currentUser.ID;\r\n this.personalsinfo.GDPRUserStatus = (this.personalsinfo.GDPRUserStatus) ? 1 : 0;\r\n this.personalsinfo.IsTermsAccepted = (this.personalsinfo.IsTermsAccepted) ? 1 : 0;\r\n this.pets.petDetails = this.petsinfo;\r\n this.pets.userInfo = this.personalsinfo;\r\n if(typeof Image == 'string'){\r\n this.pets.petDetails.petImgUrl = Image;\r\n }\r\n let petDetail = JSON.stringify(this.pets);\r\n const formData = new FormData();\r\n formData.append('petDetails', petDetail);\r\n if(typeof Image != 'string'){\r\n formData.append('Image', Image);\r\n }\r\n formData.append('croppedFileData', croppedFileData);\r\n this.Savesresponse(formData);\r\n }\r\n }\r\n }\r\n onHide(data) {\r\n this.showPersonalInfo = false\r\n }\r\n\r\n Savesresponse(petDetails) {\r\n\r\n this.SpinnerService.show();\r\n this.petsService.addUpdateLostFoundPetDetails(petDetails).subscribe((res: any) => {\r\n this.SpinnerService.hide();\r\n if (res.error == \"\") {\r\n alert(\"Innlegget ditt er sendt. Klikk OK for å se kjæledyr som går tapt i området der du fant kjæledyret.\");\r\n //alert(\"Your post has been successfully submitted. Click OK to see pets that are lost in the area where you found the pet.\");\r\n //this.router.navigate(['/list-pets'], { queryParams: { OperationTypeID: 1,radiousDistance:5,lat: this.petsinfo.lat,lng:this.petsinfo.lng } });\r\n this.router.navigate(['/list-pets'], {\r\n queryParams: {\r\n OperationTypeID: 1,\r\n radiousDistance: 10,\r\n lat: this.petsinfo.lat,\r\n lng: this.petsinfo.lng,\r\n SpeciesID: this.petsinfo.MasterSpeciesID,\r\n BreedID: this.petsinfo.MasterBreedID\r\n }\r\n });\r\n }\r\n else {\r\n alert(res.error);\r\n }\r\n })\r\n }\r\n\r\n toggleFoundSuggestion() {\r\n this.showFoundSuggestion = !this.showFoundSuggestion;\r\n }\r\n CloseSuggestion(eve: any) {\r\n eve.target.parentNode.parentNode.remove();\r\n }\r\n\r\n openDialog(): void {\r\n const dialogRef = this.dialog.open(DialogComponent, {\r\n width: '250px',\r\n data: { name: \"string name\", animal: \"this.animal\" }\r\n });\r\n }\r\n\r\n //go to pet details page\r\n goToPetDetails = (petDetail: any) => {\r\n\r\n const petName = `${petDetail.Color ? petDetail.Color : ''} ${petDetail.MasterBreed ? petDetail.MasterBreed : ''} ${petDetail.MasterSpecies ? petDetail.MasterSpecies : ''} ${(petDetail.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${petDetail.City ? petDetail.City : ''}`\r\n const urlString = petName.trim().toLowerCase().split(' ').join('-');\r\n const removeChar = urlString.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\");\r\n const encodedString = encodeURI(removeChar);\r\n const atobStr = btoa(petDetail.LostFoundID);\r\n localStorage.setItem('_page', 'report-found');\r\n window.open(`/list-pets/pet-detail/${encodeURIComponent(atobStr)}/${encodedString}?opType=2`, '_blank');\r\n\r\n }\r\n}","
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
\r\n

{{ pets.PetName }}

\r\n

{{ 'Species' | translate }}: {{ pets.SpeciesName }}

\r\n

{{ 'Breed' | translate }}: {{ pets.BreedsName }}

\r\n\r\n
\r\n
\r\n \r\n {{ 'See Details' | translate }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{'Please Wait.'| translate}}

\r\n
","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MapsAPILoader } from '@agm/core';\r\nimport { AuthService } from \"angularx-social-login\";\r\nimport { SocialUser } from \"angularx-social-login\";\r\nimport { Socialusers } from '../../../../_models';\r\nimport { AuthenticationService, OwnerService } from '../../../../_services';\r\nimport { UserService } from '../../../../_services';\r\nimport { AppComponent } from '../../../../app.component';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\n\r\n@Component({\r\n selector: 'app-foundpersonalinfo',\r\n templateUrl: './personalinfo.component.html'\r\n})\r\nexport class FoundPersonalinfoComponent implements OnInit {\r\n\r\n\r\n PersonalForm: FormGroup;\r\n @Input() showPersonalInfo: boolean = false;\r\n constructor( \r\n public app: AppComponent,\r\n private formbuilder: FormBuilder,\r\n private router: Router,\r\n private mapsAPILoader: MapsAPILoader,\r\n private ngZone: NgZone,\r\n private authService: AuthService,\r\n private authenticationService: AuthenticationService,\r\n private UserService: UserService,\r\n private ownerService : OwnerService,\r\n private SpinnerService: NgxSpinnerService,\r\n ) {\r\n }\r\n submitted = false;\r\n showFoundSuggestion: boolean = true;\r\n public lat: number;\r\n public lng: number;\r\n public zoom: number;\r\n private geoCoder;\r\n private user: SocialUser;\r\n private loggedIn: boolean;\r\n private PersonalInfo: any;\r\n\r\n socialusers = new Socialusers();\r\n currentUser;\r\n componentForm = {\r\n street_number: 'short_name',\r\n route: 'long_name',\r\n locality: 'long_name',\r\n administrative_area_level_1: 'short_name',\r\n country: 'long_name',\r\n postal_code: 'short_name',\r\n District: 'sort_name',\r\n State:'sort_name',\r\n administrative_area_level_2: 'long_name'\r\n };\r\n\r\n\r\n @ViewChild('searchp')\r\n private searchElementRef: ElementRef;\r\n\r\n ngOnInit() {\r\n //this.mapsAPILoader.load().then(() => {\r\n // this.setCurrentLocation();\r\n //});\r\n this.PersonalForm = this.formbuilder.group({\r\n FirstName: ['', [Validators.required, this.noWhitespaceValidator]],\r\n LastName: [''],\r\n EmailID: ['', [Validators.required, this.noWhitespaceValidator]],\r\n Address: [''],\r\n ZipCode: [''],\r\n City: [''],\r\n District:[''],\r\n State:[''],\r\n Country:[''],\r\n ContactNumber: ['', [Validators.required, this.noWhitespaceValidator]],\r\n GDPRUserStatus: [''],\r\n IsTermsAccepted: ['',[Validators.required,this.validateIfChecked]]\r\n });\r\n this.currentUser = this.authenticationService.currentUserValue; \r\n\r\n if (this.currentUser) {\r\n this.UserService.getUserByEmailID(this.currentUser.EmailID, this.currentUser.Provider).subscribe(res => {\r\n this.PersonalInfo = res.data;\r\n this.PersonalForm.controls['FirstName'].patchValue(this.PersonalInfo.FirstName)\r\n this.PersonalForm.controls['LastName'].patchValue(this.PersonalInfo.LastName)\r\n this.PersonalForm.controls['EmailID'].patchValue(this.PersonalInfo.EmailID)\r\n this.PersonalForm.controls['ContactNumber'].patchValue(this.PersonalInfo.ContactNumber)\r\n if (this.PersonalInfo.Address) {\r\n this.PersonalForm.controls['Address'].patchValue(this.PersonalInfo.Address)\r\n this.PersonalForm.controls['ZipCode'].patchValue(this.PersonalInfo.Zipcode)\r\n this.PersonalForm.controls['City'].patchValue(this.PersonalInfo.City)\r\n this.PersonalForm.controls['District'].patchValue(this.PersonalInfo.District)\r\n this.PersonalForm.controls['State'].patchValue(this.PersonalInfo.State)\r\n this.PersonalForm.controls['Country'].patchValue(this.PersonalInfo.Country)\r\n }\r\n /* else if (this.PersonalInfo.ContactNumber){\r\n this.ownerService.getUserDetailByPhone(this.PersonalInfo.ContactNumber).subscribe(resp => {\r\n if(resp.Data.IsSuccess){\r\n this.PersonalForm.controls['Address'].patchValue(resp.Data.fullstreet)\r\n this.PersonalForm.controls['ZipCode'].patchValue(resp.Data.zip)\r\n this.PersonalForm.controls['City'].patchValue(resp.Data.city)\r\n this.PersonalForm.controls['District'].patchValue(resp.Data.district)\r\n this.PersonalForm.controls['State'].patchValue(resp.Data.state)\r\n this.PersonalForm.controls['Country'].patchValue(resp.Data.country)\r\n }else{\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n });\r\n }\r\n \r\n });\r\n }*/\r\n else{\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n });\r\n }\r\n\r\n });\r\n }else{\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n });\r\n }\r\n //load Places Autocomplete\r\n this.mapsAPILoader.load().then(() => {\r\n this.geoCoder = new google.maps.Geocoder;\r\n\r\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n types: []\r\n });\r\n autocomplete.addListener(\"place_changed\", () => {\r\n this.ngZone.run(() => {\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n // Get each component of the address from the place details,\r\n // and then fill-in the corresponding field on the form.\r\n this.PersonalForm.controls['Address'].patchValue(place.formatted_address);\r\n\r\n for (var i = 0; i < place.address_components.length; i++) {\r\n var addressType = place.address_components[i].types[0];\r\n if (this.componentForm[addressType]) {\r\n var val = place.address_components[i][this.componentForm[addressType]];\r\n if (addressType == \"administrative_area_level_1\") {\r\n // this.state = val;\r\n }\r\n if (addressType == \"locality\") {\r\n this.PersonalForm.controls['City'].patchValue(val)\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.PersonalForm.controls['ZipCode'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_1\") {\r\n this.PersonalForm.controls['State'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_2\") {\r\n this.PersonalForm.controls['District'].patchValue(val)\r\n }\r\n if (addressType == \"country\") {\r\n this.PersonalForm.controls['Country'].patchValue(val)\r\n }\r\n\r\n }\r\n }\r\n\r\n //set latitude, longitude and zoom\r\n this.lat = place.geometry.location.lat();\r\n this.lng = place.geometry.location.lng();\r\n this.zoom = 12;\r\n });\r\n });\r\n });\r\n\r\n\r\n }\r\n @Output() onPosted = new EventEmitter();\r\n @Output() onHide = new EventEmitter();\r\n get e() {\r\n return this.PersonalForm.controls;\r\n }\r\n showPetInfo() {\r\n this.onHide.emit(\"show\")\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n // console.log(this.PersonalForm.value);\r\n if (this.PersonalForm.invalid) {\r\n this.scrollToError();\r\n return;\r\n }\r\n this.onPosted.emit(this.PersonalForm.value)\r\n\r\n }\r\n toggleFoundSuggestion() {\r\n this.showFoundSuggestion = !this.showFoundSuggestion;\r\n }\r\n\r\n public noWhitespaceValidator(control: FormControl) {\r\n if (control.value && control.value.length > 0) {\r\n const isWhitespace = (control.value || '').trim().length === 0;\r\n const isValid = !isWhitespace;\r\n return isValid ? null : { 'whitespace': true };\r\n }\r\n }\r\n public validateIfChecked(control: FormControl) {\r\n if(control.value){\r\n return null\r\n }\r\n else{\r\n return { 'checked': true };\r\n }\r\n \r\n }\r\n \r\n private setCurrentLocation() {\r\n if (\"geolocation\" in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.lat = position.coords.latitude;\r\n this.lng = position.coords.longitude;\r\n this.zoom = 12;\r\n this.getAddress(this.lat, this.lng);\r\n });\r\n }\r\n }\r\n\r\n getAddress(latitude, longitude) {\r\n this.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\r\n // console.log(results);\r\n // console.log(status);\r\n if (status === 'OK') {\r\n if (results[0]) {\r\n this.zoom = 12;\r\n // console.log(results[0].formatted_address);\r\n this.PersonalForm.controls['Address'].patchValue(results[0].formatted_address)\r\n let place = results[0];\r\n for (var i = 0; i < place.address_components.length; i++) {\r\n var addressType = place.address_components[i].types[0];\r\n if (this.componentForm[addressType]) {\r\n var val = place.address_components[i][this.componentForm[addressType]];\r\n // console.log(addressType);\r\n if (addressType == \"administrative_area_level_1\") {\r\n // this.PersonalForm.controls['State'].patchValue(val)\r\n // this.state = val;\r\n }\r\n if (addressType == \"locality\") {\r\n this.PersonalForm.controls['City'].patchValue(val)\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.PersonalForm.controls['ZipCode'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_1\") {\r\n this.PersonalForm.controls['State'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_2\") {\r\n this.PersonalForm.controls['District'].patchValue(val)\r\n }\r\n if (addressType == \"country\") {\r\n this.PersonalForm.controls['Country'].patchValue(val)\r\n }\r\n // console.log(val)\r\n\r\n }\r\n }\r\n\r\n } else {\r\n window.alert('No results found');\r\n }\r\n } else {\r\n window.alert('Geocoder failed due to: ' + status);\r\n }\r\n\r\n });\r\n }\r\n getDetailByPhone(){\r\n let phone = this.PersonalForm.controls['ContactNumber'].value;\r\n let address = this.PersonalForm.controls['Address'].value;\r\n \r\n if(phone != '' && address == ''){\r\n this.SpinnerService.show();\r\n \r\n this.ownerService.getUserDetailByPhone(phone).subscribe(resp => {\r\n if(resp.Data.IsSuccess){\r\n this.PersonalForm.controls['Address'].patchValue(resp.Data.fullstreet)\r\n this.PersonalForm.controls['ZipCode'].patchValue(resp.Data.zip)\r\n this.PersonalForm.controls['City'].patchValue(resp.Data.city)\r\n this.PersonalForm.controls['District'].patchValue(resp.Data.district)\r\n this.PersonalForm.controls['State'].patchValue(resp.Data.state)\r\n this.PersonalForm.controls['Country'].patchValue(resp.Data.country)\r\n }\r\n \r\n });\r\n this.SpinnerService.hide();\r\n \r\n }\r\n \r\n }\r\n scrollTo(el: Element): void {\r\n if (el) {\r\n el.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n }\r\n }\r\n\r\n scrollToError(): void {\r\n const firstElementWithError = document.querySelector('.ng-invalid[formControlName]');\r\n this.scrollTo(firstElementWithError);\r\n }\r\n}\r\n","
\r\n
\r\n\r\n
\r\n
\r\n

\r\n 1\r\n {{ 'Contact information' | translate }}\r\n 2\r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Name is required' | translate}}
\r\n
{{'Name is of more then 3 char'| translate}}
\r\n
{{'Name is not more then 25 char'| translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Email is required'| translate}}
\r\n
{{'Please Enter a valid Email-ID'| translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Phone Number is required' | translate}}
\r\n
{{'Phone Number is of more then 5 char'| translate}}\r\n
\r\n
{{'Phone Number is not more then 10 char'| translate}}\r\n
\r\n
{{'Space is not\r\n allowed'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n {{ 'Accept terms and\r\n conditions' | translate }}\r\n
\r\n
{{'Please accept terms and conditions'| translate}}
\r\n
{{'Please accept\r\n terms and conditions'| translate}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n

Please Wait.

\r\n
","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { PetsService } from '../../../../_services';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { MapsAPILoader } from '@agm/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppComponent } from '../../../../app.component';\r\nimport { ImageCroppedEvent } from 'ngx-image-cropper';\r\nimport { NgbModal, ModalDismissReasons} from '@ng-bootstrap/ng-bootstrap';\r\nimport { AuthenticationService, OwnerService } from '../../../../_services';\r\nimport { DateAdapter } from '@angular/material';\r\n\r\n@Component({\r\n selector: 'app-foundpetinfo',\r\n templateUrl: './petinfo.component.html',\r\n styleUrls: ['./petinfo.component.scss']\r\n})\r\n\r\nexport class FoundPetinfoComponent implements OnInit {\r\n\r\n registerForm: FormGroup;\r\n showFoundSuggestion: boolean = true;\r\n @Input() showPersonalInfo;\r\n public lat: number;\r\n public lng: number;\r\n public zoom: number;\r\n private geoCoder;\r\n private loggedIn: boolean;\r\n minDate: Date;\r\n maxDate: Date;\r\n chipFound: string = \"\";\r\n petImgUrl:string = null\r\n\r\n @ViewChild('search')\r\n\r\n private searchElementRef: ElementRef;\r\n\r\n constructor(\r\n private dateAdapter: DateAdapter,\r\n public app: AppComponent,\r\n private pets: PetsService,\r\n private formbuilder: FormBuilder,\r\n private mapsAPILoader: MapsAPILoader,\r\n private ngZone: NgZone,\r\n private router: Router,\r\n private modalService: NgbModal, \r\n private authenticationService: AuthenticationService,\r\n ) {\r\n this.dateAdapter.setLocale('en-GB'); //dd/MM/yyyy\r\n this.maxDate = new Date();\r\n }\r\n\r\n\r\n country: any;\r\n MasterSpecies: any;\r\n MasterBreeds: any;\r\n submitted = false;\r\n IsChipped = false;\r\n currentUser:any;\r\n fileData: File = null;\r\n croppedFileData: any = null;\r\n previewUrl: any = \"assets/img/user_add.png\";\r\n fileUploadProgress: string = null;\r\n uploadedFilePath: string = null;\r\n imageError = \"\";\r\n closeResult = \"\";\r\n\r\n\r\n componentForm = {\r\n street_number: 'short_name',\r\n route: 'long_name',\r\n locality: 'long_name',\r\n sublocality_level_1: 'long_name',\r\n sublocality_level_2: 'long_name',\r\n administrative_area_level_1: 'long_name',\r\n administrative_area_level_2: 'long_name',\r\n country: 'long_name',\r\n postal_code: 'short_name',\r\n postal_town: 'long_name'\r\n };\r\n\r\n imageChangedEvent: any = '';\r\n croppedImage: any = '';\r\n \r\n fileChangeEvent(event: any): void {\r\n \r\n }\r\n imageCropped(event: ImageCroppedEvent) {\r\n this.croppedImage = event.base64;\r\n }\r\n imageLoaded() {\r\n // show cropper\r\n }\r\n cropperReady() {\r\n // cropper ready\r\n }\r\n loadImageFailed() {\r\n // show message\r\n }\r\n open(content) {\r\n this.previewUrl = \"assets/img/user_add.png\";\r\n this.croppedFileData = \"\";\r\n this.modalService.open(content, {ariaLabelledBy: 'modal-basic-title'}).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.previewUrl = this.croppedImage;\r\n this.croppedFileData = this.croppedImage;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n this.registerForm.controls['Image'].patchValue(\"\");\r\n });\r\n return false;\r\n }\r\n private getDismissReason(reason: any): string {\r\n this.registerForm.controls['Image'].patchValue(\"\");\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n this.registerForm = this.formbuilder.group({\r\n IsChipped: ['0'],\r\n ChipID: [''],\r\n PetName: ['', [this.noWhitespaceValidator]],\r\n MasterSpeciesID: ['', Validators.required],\r\n MasterBreedID: [''],\r\n LostFoundDate: [new Date(), Validators.required],\r\n //LostFoundDate: ['', Validators.required],\r\n Color: [''],\r\n Gender: [1],\r\n HairType:['1'],\r\n Area: ['', Validators.required],\r\n State: ['', [Validators.required, this.noWhitespaceValidator]],\r\n City: ['',[Validators.required, this.noWhitespaceValidator]],\r\n Commune: ['',[this.noWhitespaceValidator]],\r\n District: ['',[this.noWhitespaceValidator]],\r\n Country: ['Norway', Validators.required],\r\n ZipCode:['', Validators.required],\r\n AdditionalInfo: [''],\r\n ImagePath: [''],Company:[''],\r\n Image: [''],\r\n croppedFileData: [''],\r\n lat: [''],\r\n lng: [''],\r\n OperationTypeID: ['']\r\n });\r\n\r\n this.showPersonalInfo = false;\r\n this.registerForm.value.IsChipped = 0;\r\n\r\n this.pets.getCountry().subscribe(res => {\r\n this.country = res;\r\n });\r\n this.pets.getSpecies().subscribe(species => {\r\n this.MasterSpecies = species;\r\n });\r\n\r\n this.currentUser = this.authenticationService.currentUserValue; \r\n\r\n //load Places Autocomplete\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n this.geoCoder = new google.maps.Geocoder;\r\n\r\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n types: []\r\n });\r\n autocomplete.addListener(\"place_changed\", () => {\r\n this.ngZone.run(() => {\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n this.fillAddress(place);\r\n\r\n //set latitude, longitude and zoom\r\n this.lat = place.geometry.location.lat();\r\n this.lng = place.geometry.location.lng();\r\n this.zoom = 15;\r\n this.getSuggestion();\r\n });\r\n });\r\n });\r\n//end load Places Autocomplete\r\n }\r\n\r\n get petf() {\r\n return this.registerForm.controls;\r\n }\r\n getSuggestion() {\r\n this.chipFound = \"\";\r\n let filters = {\r\n \"SearchFilters\": {\r\n \"SpeciesID\": this.registerForm.value.MasterSpeciesID,\r\n \"BreedID\": this.registerForm.value.MasterBreedID,\r\n \"lat\": this.lat,\r\n \"lng\": this.lng,\r\n \"radiousDistance\": 20,\r\n \"OperationTypeID\": 1\r\n }\r\n }\r\n this.onPosted.emit(filters)\r\n }\r\n\r\n getChipInfo() {\r\n\r\n this.registerForm.controls['PetName'].patchValue(\"\");\r\n this.registerForm.controls['MasterSpeciesID'].patchValue(\"\");\r\n this.registerForm.controls['Color'].patchValue(\"\");\r\n this.registerForm.controls['MasterBreedID'].patchValue(\"\");\r\n\r\n // this.pets.IsChipIDExists(this.registerForm.value.ChipID, this.registerForm.value.OperationTypeID).subscribe(IsChipExist =>{\r\n this.pets.IsChipIDExists(this.registerForm.value.ChipID, 2).subscribe(IsChipExist =>{\r\n if(IsChipExist == true && this.registerForm.value.ChipID.trim() != \"\")\r\n {\r\n this.chipFound = \"Pet with ChipID \"+this.registerForm.value.ChipID+\" Already exists\";\r\n this.registerForm.controls['ChipID'].patchValue(\"\");\r\n }\r\n else\r\n {\r\n this.pets.getChipInfo(this.registerForm.value.ChipID).subscribe(chipInfo => {\r\n var genderValue: any;\r\n var hairtypeValue : any;\r\n if(!chipInfo.IsAlive)// data from api came true as false and false as true.\r\n {\r\n if (chipInfo.ChipId) {\r\n if(chipInfo.PetPhoto !== ''){\r\n this.previewUrl = chipInfo.PetPhoto;\r\n }\r\n this.petImgUrl = chipInfo.PetOriginalPhoto;\r\n this.registerForm.controls['PetName'].patchValue(chipInfo.PetName);\r\n this.registerForm.controls['MasterSpeciesID'].patchValue(chipInfo.SpeciesID);\r\n this.registerForm.controls['Color'].patchValue(chipInfo.PetColor);\r\n this.registerForm.controls['LostFoundDate'].patchValue(new Date());\r\n \r\n if (chipInfo.PetSex) {\r\n if (chipInfo.PetSex.toLowerCase() == \"male\" || chipInfo.PetSex.toLowerCase() == \"hanndyr\") {\r\n genderValue = 1;\r\n } else if (chipInfo.PetSex.toLowerCase() == \"female\" || chipInfo.PetSex.toLowerCase() == \"hunndyr\") {\r\n genderValue = 2;\r\n }\r\n }\r\n this.registerForm.controls['Gender'].patchValue(genderValue);\r\n if (chipInfo.HairType) {\r\n if (chipInfo.HairType.toLowerCase() == 'longhair') {\r\n hairtypeValue = 1;\r\n }\r\n else if (chipInfo.HairType.toLowerCase() == 'sorthair') {\r\n hairtypeValue = 2;\r\n }\r\n }\r\n this.registerForm.controls['HairType'].patchValue(hairtypeValue);\r\n this.pets.getBreeds(chipInfo.SpeciesID).subscribe(breeds => {\r\n this.MasterBreeds = breeds;\r\n this.registerForm.controls['MasterBreedID'].patchValue(chipInfo.BreedID);\r\n this.getSuggestion();\r\n });\r\n }\r\n else {\r\n this.chipFound = \"No data found for this chipId. Please fill details below.\"\r\n }\r\n }\r\n else{\r\n var chipID = this.registerForm.value.ChipID;\r\n this.registerForm.controls['ChipID'].patchValue(\"\");\r\n this.chipFound = \"Kjæledyr med ChipId :\"+ chipID+\" er død, og du kan ikke rapportere dette kjæledyret\";\r\n }\r\n });\r\n }\r\n });\r\n}\r\n\r\n getBreeds() {\r\n this.registerForm.controls['MasterBreedID'].patchValue(\"\");\r\n this.pets.getBreeds(this.registerForm.value.MasterSpeciesID).subscribe(breeds => {\r\n this.MasterBreeds = breeds;\r\n this.getSuggestion();\r\n });\r\n }\r\n @Output() onPosted = new EventEmitter();\r\n\r\n onSubmit() {\r\n // debugger;\r\n this.submitted = true;\r\n if(this.imageError)\r\n {\r\n this.scrollToError();\r\n return;\r\n }\r\n if(this.registerForm.value.Image == '' && this.registerForm.value.IsChipped == '0'){\r\n this.imageError = 'Pet Image is required';\r\n const ele = document.getElementById('error-msg');\r\n this.scrollTo(ele);\r\n this.scrollToError();\r\n return;\r\n }\r\n if(this.registerForm.value.Image == '' && this.registerForm.value.IsChipped == '1' && this.previewUrl == 'assets/img/user_add.png'){\r\n this.imageError = 'Pet Image is required';\r\n const ele = document.getElementById('error-msg');\r\n this.scrollTo(ele);\r\n return;\r\n }\r\n if (this.registerForm.invalid) {\r\n this.scrollToError();\r\n return;\r\n }\r\n\r\n if(this.petImgUrl && !this.fileData){\r\n this.registerForm.controls['ImagePath'].patchValue(this.petImgUrl);\r\n }else{\r\n this.registerForm.controls['ImagePath'].patchValue(this.fileData);\r\n }\r\n\r\n this.registerForm.controls['Company'].patchValue(this.currentUser.Company);\r\n this.registerForm.controls['croppedFileData'].patchValue(this.croppedFileData);\r\n this.registerForm.controls['lat'].patchValue(this.lat);\r\n this.registerForm.controls['lng'].patchValue(this.lng);\r\n this.onPosted.emit(this.registerForm.value)\r\n const firstElementWithError = document.querySelector('.xng-breadcrumb-root');\r\n this.scrollTo(firstElementWithError);\r\n\r\n }\r\n\r\n private setCurrentLocation() {\r\n if (\"geolocation\" in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.lat = position.coords.latitude;\r\n this.lng = position.coords.longitude;\r\n this.zoom = 15;\r\n this.getAddress(this.lat, this.lng);\r\n });\r\n }\r\n }\r\n\r\n toggleFoundSuggestion() {\r\n this.showFoundSuggestion = !this.showFoundSuggestion;\r\n }\r\n\r\n markerDragEnd($event: any) {\r\n // console.log($event);\r\n this.lat = $event.coords.lat;\r\n this.lng = $event.coords.lng;\r\n this.getAddress(this.lat, this.lng);\r\n }\r\n\r\n getAddress(latitude, longitude) {\r\n this.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\r\n // console.log(results);\r\n // console.log(status);\r\n if (status === 'OK') {\r\n if (results[0]) {\r\n this.fillAddress(results[0])\r\n } else {\r\n window.alert('No results found');\r\n }\r\n } else {\r\n window.alert('Geocoder failed due to: ' + status);\r\n }\r\n\r\n });\r\n }\r\n\r\n fillAddress(mapresult) {\r\n this.zoom = 15;\r\n let area = mapresult.formatted_address;\r\n //this.registerForm.controls['Area'].patchValue(results[0].formatted_address)\r\n let place = mapresult;\r\n for (var i = 0; i < place.address_components.length; i++) {\r\n var addressType = place.address_components[i].types[0];\r\n if (this.componentForm[addressType]) {\r\n var val = place.address_components[i][this.componentForm[addressType]];\r\n \r\n if (addressType == \"administrative_area_level_1\") {\r\n this.registerForm.controls['State'].patchValue(val)\r\n area = area.replace(val,\"\")\r\n \r\n }\r\n if (addressType == \"administrative_area_level_2\") {\r\n this.registerForm.controls['District'].patchValue(val)\r\n area = area.replace(val,\"\")\r\n }\r\n if (addressType == \"country\") {\r\n //this.registerForm.controls['Country'].patchValue(val)\r\n area = area.replace(val,\"\")\r\n // this.state = val;\r\n }\r\n if (addressType == \"locality\") {\r\n this.registerForm.controls['City'].patchValue(val)\r\n area = area.replace(val+\", \",\"\")\r\n // this.state = val;\r\n }\r\n if(addressType == \"postal_town\"){\r\n this.registerForm.controls['City'].patchValue(val)\r\n area = area.replace(val+\", \",\"\")\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.registerForm.controls['ZipCode'].patchValue(val)\r\n area = area.replace(val+\", \",\"\")\r\n // this.state = val;\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.registerForm.controls['ZipCode'].patchValue(val)\r\n area = area.replace(val,\"\")\r\n // this.state = val;\r\n }\r\n \r\n \r\n }\r\n }\r\n area = area.trim();\r\n let comma = area.substring(area.length, area.length - 1)\r\n if(comma == \",\"){\r\n area = area.substring(0, area.length - 1)\r\n }\r\n area = area.trim();\r\n this.registerForm.controls['Area'].patchValue(area)\r\n }\r\n\r\n fileProgress(fileInput: any) {\r\n this.imageError = null;\r\n if (fileInput.target.files && fileInput.target.files[0]) {\r\n // Size Filter Bytes\r\n const max_size = 15000000;\r\n const allowed_types = ['image/png', 'image/jpeg'];\r\n const max_height = 15200;\r\n const max_width = 25600;\r\n\r\n if (fileInput.target.files[0].size > max_size) {\r\n this.imageError =\r\n 'Maximum size allowed is ' + max_size / 1000 + 'kb';\r\n\r\n return false;\r\n }\r\n if (!allowed_types.includes(fileInput.target.files[0].type)) {\r\n this.imageError = 'Only Images are allowed ( JPG | PNG )';\r\n return false;\r\n }\r\n\r\n let Content: HTMLElement = document.getElementById(\"contentNew\") as HTMLElement\r\n Content.click();\r\n this.imageChangedEvent = event;\r\n this.fileData = fileInput.target.files[0];\r\n // this.preview();\r\n }\r\n }\r\n\r\n preview() {\r\n // Show preview \r\n var mimeType = this.fileData.type;\r\n if (mimeType.match(/image\\/*/) == null) {\r\n return;\r\n }\r\n\r\n var reader = new FileReader();\r\n reader.readAsDataURL(this.fileData);\r\n reader.onload = (_event) => {\r\n this.previewUrl = reader.result;\r\n }\r\n }\r\n\r\n public noWhitespaceValidator(control: FormControl) {\r\n if(control.value && control.value.length > 0){\r\n const isWhitespace = (control.value || '').trim().length === 0;\r\n const isValid = !isWhitespace;\r\n return isValid ? null : { 'whitespace': true };\r\n } \r\n }\r\n public onIsChippedChange() {\r\n this.registerForm.controls[\"ChipID\"].clearValidators();\r\n if (this.registerForm.controls.IsChipped.value == 1) {\r\n this.registerForm.controls[\"ChipID\"].setValidators([Validators.required,this.noWhitespaceValidator]);\r\n }\r\n this.registerForm.controls[\"ChipID\"].updateValueAndValidity()\r\n }\r\n public onClickFillDate()\r\n {\r\n this.registerForm.controls['LostFoundDate'].patchValue(new Date())\r\n }\r\n // public onClickFillAddress()\r\n // {\r\n // this.mapsAPILoader.load().then(() => {\r\n // this.setCurrentLocation();\r\n // this.geoCoder = new google.maps.Geocoder;\r\n\r\n // let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n // types: []\r\n // });\r\n // autocomplete.addListener(\"place_changed\", () => {\r\n // this.ngZone.run(() => {\r\n // //get the place result\r\n // let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n // //verify result\r\n // if (place.geometry === undefined || place.geometry === null) {\r\n // return;\r\n // }\r\n // this.fillAddress(place);\r\n\r\n // //set latitude, longitude and zoom\r\n // this.lat = place.geometry.location.lat();\r\n // this.lng = place.geometry.location.lng();\r\n // this.zoom = 15;\r\n // this.getSuggestion();\r\n // });\r\n // });\r\n // });\r\n // }\r\n\r\n\r\n scrollTo(el: Element): void {\r\n if (el) {\r\n el.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n }\r\n }\r\n\r\n scrollToError(): void {\r\n const firstElementWithError = document.querySelector('.ng-invalid[formControlName]');\r\n this.scrollTo(firstElementWithError);\r\n }\r\n\r\n}","
\r\n
\r\n

\r\n 1\r\n {{ 'Found Pet Info' | translate }}\r\n 2\r\n

\r\n
\r\n
\r\n
\r\n \"\"\r\n \r\n
\r\n
{{ imageError }}
\r\n
\r\n
{{'Pet Image is required' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'Species is required' | translate }}
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Pet name is of more then 3 char' | translate }}
\r\n
{{'Pet name is not more then 60 char' | translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}.
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n {{ 'Choose a date' | translate }}\r\n \r\n \r\n \r\n \r\n
\r\n
{{'Date Of found is required' | translate}}
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n {{ 'MapInfo' | translate }}\r\n
\r\n
{{'Area is required' | translate}}
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'Zipcode is required' | translate}}
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'City is required' | translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'State is required' | translate }}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'Country is required'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'Crop Image' | translate}}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'Preview'|translate}}
\r\n \r\n
\r\n
\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Pets } from '../../../_models';\r\nimport { Router } from '@angular/router';\r\nimport { PetsService } from '../../../_services';\r\nimport { AuthenticationService } from '../../../_services';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { DialogComponent } from '../../dialog/dialog.component';\r\nimport { NgxSpinnerService } from \"ngx-spinner\";\r\n\r\n@Component({\r\n selector: 'app-lost',\r\n templateUrl: './lost.component.html',\r\n styleUrls: ['./lost.component.scss']\r\n})\r\nexport class ReportLostComponent implements OnInit {\r\n\r\n showFoundSuggestion: boolean = false;\r\n public showPersonalInfo: boolean = false;\r\n public petsinfo: any;\r\n public personalsinfo: any;\r\n public minsidePetInfo: any;\r\n public minsideOwnerInfo: any;\r\n private petDetails = { petDetails: {}, Image: {} };\r\n pets = new Pets();\r\n petsSuggestion: any;\r\n showMinsidePetList: boolean = false;\r\n currentUser: any;\r\n petImagePath = environment.apiBaseUrl + \"/Static/Images/\";\r\n petDetailPath = environment.apiBaseUrl + \"/pet-detail?PetID=\";\r\n\r\n constructor(\r\n private router: Router,\r\n private petsService: PetsService,\r\n private authenticationService: AuthenticationService,\r\n public dialog: MatDialog,\r\n private SpinnerService: NgxSpinnerService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n this.currentUser = this.authenticationService.currentUserValue;\r\n\r\n if (this.currentUser.Provider == 'MINSIDE') {\r\n this.showMinsidePetList = true;\r\n this.showPersonalInfo = false;\r\n }\r\n localStorage.removeItem('ListPageNo');\r\n localStorage.removeItem('ListView');\r\n localStorage.removeItem('SearchFilters');\r\n }\r\n onMarkLost(data) {\r\n if (data.source == \"MINSIDE\") {\r\n this.showMinsidePetList = false;\r\n this.showPersonalInfo = false;\r\n this.minsidePetInfo = data.petDetail;\r\n this.minsideOwnerInfo = data.ownerDetail;\r\n }\r\n\r\n }\r\n onPosted(data) {\r\n if (data) {\r\n\r\n if (data.SearchFilters) {\r\n // console.log(data.SearchFilters);\r\n this.petsService.GetLostFoundPetsListPartialFields(data.SearchFilters).subscribe(res => {\r\n this.petsSuggestion = res;\r\n if (this.petsSuggestion.RecordsFiltered == 0) {\r\n this.petsSuggestion = \"\"\r\n }\r\n });\r\n }\r\n if (data.IsChipped) {\r\n this.petsinfo = data;\r\n this.showPersonalInfo = true;\r\n window.scroll(0, 0);\r\n }\r\n if (data.FirstName) {\r\n this.personalsinfo = data;\r\n // console.log(this.petsinfo);\r\n this.petsinfo.MasterSpeciesID = parseInt(this.petsinfo.MasterSpeciesID);\r\n this.petsinfo.MasterBreedID = parseInt(this.petsinfo.MasterBreedID);\r\n let Image = this.petsinfo.ImagePath;\r\n console.log('IMAGE : ', Image)\r\n let croppedFileData = this.petsinfo.croppedFileData;\r\n this.petsinfo.ImagePath = \"\";\r\n this.petsinfo.croppedFileData = \"\";\r\n this.petsinfo.Image = \"\";\r\n // this.petsinfo.DateOfBirth = \"\";\r\n // this.petsinfo.DateOfLost = \"\";\r\n this.petsinfo.IsChipped = (this.petsinfo.IsChipped == \"1\") ? 1 : 0;\r\n this.petsinfo.ShowChipNoToOthers=(this.petsinfo.IsChipIDinDetail) ? 1 : 0;\r\n this.petsinfo.OperationTypeID = 1;\r\n this.petsinfo.UserLoginID = this.currentUser.ID;\r\n this.personalsinfo.LoginUserID = this.currentUser.ID;\r\n this.personalsinfo.GDPRUserStatus = (this.personalsinfo.GDPRUserStatus) ? 1 : 0;\r\n this.personalsinfo.IsTermsAccepted = (this.personalsinfo.IsTermsAccepted) ? 1 : 0;\r\n delete this.petsinfo['IsChipIDinDetail'];\r\n this.pets.petDetails = this.petsinfo;\r\n this.pets.userInfo = this.personalsinfo;\r\n console.log(typeof Image);\r\n if(typeof Image == 'string'){\r\n this.pets.petDetails.petImgUrl = Image;\r\n }\r\n let petDetail = JSON.stringify(this.pets);\r\n const formData = new FormData();\r\n formData.append('petDetails', petDetail);\r\n if(typeof Image != 'string'){\r\n formData.append('Image', Image);\r\n }\r\n formData.append('croppedFileData', croppedFileData);\r\n this.Savesresponse(formData);\r\n }\r\n }\r\n }\r\n\r\n onHide(data) {\r\n this.showPersonalInfo = false\r\n }\r\n\r\n Savesresponse(petDetails) {\r\n this.SpinnerService.show();\r\n this.petsService.addUpdateLostFoundPetDetails(petDetails).subscribe((res: any) => {\r\n this.SpinnerService.hide();\r\n if (res.error == \"\") {\r\n alert(\"Innlegget ditt er sendt. Klikk OK for å se kjæledyr som finnes i området der du mistet kjæledyret.\");\r\n // alert(\"Your post has been successfully submitted. Click OK to see pets that are found in the area where you lost the pet.\");\r\n this.router.navigate(['/list-pets'], {\r\n queryParams: {\r\n OperationTypeID: 2,\r\n radiousDistance: 10,\r\n lat: this.petsinfo.lat,\r\n lng: this.petsinfo.lng,\r\n SpeciesID: this.petsinfo.MasterSpeciesID,\r\n BreedID: this.petsinfo.MasterBreedID\r\n }\r\n });\r\n }\r\n else {\r\n alert(res.error);\r\n }\r\n })\r\n }\r\n\r\n toggleFoundSuggestion() {\r\n this.showFoundSuggestion = !this.showFoundSuggestion;\r\n }\r\n CloseSuggestion(eve: any) {\r\n eve.target.parentNode.parentNode.remove();\r\n }\r\n\r\n openDialog(): void {\r\n const dialogRef = this.dialog.open(DialogComponent, {\r\n width: '250px',\r\n data: { name: \"string name\", animal: \"this.animal\" }\r\n });\r\n }\r\n\r\n newLostPet(): void {\r\n this.showMinsidePetList = false;\r\n }\r\n\r\n //go to pet details page\r\n\tgoToPetDetails = (petDetail:any) => {\r\n\t\tconst petName = `${petDetail.Color ? petDetail.Color: '' } ${petDetail.MasterBreed ? petDetail.MasterBreed : ''} ${petDetail.MasterSpecies ? petDetail.MasterSpecies : ''} ${(petDetail.OperationTypeID == \"1\") ? 'Tapt' : 'Funnet'} I ${petDetail.City ? petDetail.City : ''}`\r\n\t\tconst urlString = petName.trim().toLowerCase().split(' ').join('-');\r\n\t\tconst removeChar = urlString.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\");\r\n const encodedString = encodeURI(removeChar);\r\n\t\tconst atobStr = btoa(petDetail.LostFoundID);\r\n\t\tlocalStorage.setItem('_page','report-lost');\r\n window.open(`/list-pets/pet-detail/${encodeURIComponent(atobStr)}/${encodedString}?opType=1`, '_blank');\r\n\r\n\t}\r\n}","\n
\n
\n
\n \n
\n \n \n
\n \n \n
\n \n \n \n \n
\n \n
\n
\n
\n \"\"\n
\n
\n \"\"\n
\n
\n
\n \n

{{ pets.PetName }}

\n

{{ 'Species'| translate }}: {{ pets.SpeciesName }}

\n

{{ 'Breed' | translate}}: {{ pets.BreedsName }}

\n
\n
\n \n {{ 'See Details' | translate}}\n
\n
\n
\n
\n
\n
\n
\n
\n \n

{{'Please Wait.'| translate}}

\n
\n","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { MapsAPILoader } from '@agm/core';\r\nimport { AuthService } from \"angularx-social-login\";\r\nimport { SocialUser } from \"angularx-social-login\";\r\nimport { Socialusers } from '../../../../_models';\r\nimport { AuthenticationService, OwnerService } from '../../../../_services';\r\nimport { UserService } from '../../../../_services';\r\nimport { AppComponent } from '../../../../app.component';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\n\r\n@Component({\r\n selector: 'app-lostpersonalinfo',\r\n templateUrl: './personalinfo.component.html'\r\n})\r\nexport class LostPersonalinfoComponent implements OnInit {\r\n\r\n\r\n PersonalForm: FormGroup;\r\n @Input() showPersonalInfo: boolean = false;\r\n @Input() minsideOwnerInfo;\r\n constructor(\r\n public app: AppComponent,\r\n private formbuilder: FormBuilder,\r\n private router: Router,\r\n private mapsAPILoader: MapsAPILoader,\r\n private ngZone: NgZone,\r\n private authService: AuthService,\r\n private authenticationService: AuthenticationService,\r\n private UserService: UserService,\r\n private ownerService: OwnerService,\r\n private SpinnerService: NgxSpinnerService,\r\n ) {\r\n }\r\n submitted = false;\r\n showFoundSuggestion: boolean = true;\r\n public lat: number;\r\n public lng: number;\r\n public zoom: number;\r\n private geoCoder;\r\n private user: SocialUser;\r\n private loggedIn: boolean;\r\n currentUser: any;\r\n socialusers = new Socialusers();\r\n PersonalInfo: any;\r\n componentForm = {\r\n street_number: 'short_name',\r\n route: 'long_name',\r\n locality: 'long_name',\r\n administrative_area_level_1: 'short_name',\r\n administrative_area_level_2: 'short_name',\r\n country: 'long_name',\r\n postal_code: 'short_name'\r\n };\r\n\r\n\r\n @ViewChild('searchp')\r\n private searchElementRef: ElementRef;\r\n\r\n ngOnInit() {\r\n //this.mapsAPILoader.load().then(() => {\r\n // this.setCurrentLocation();\r\n //});\r\n this.PersonalForm = this.formbuilder.group({\r\n FirstName: ['', [Validators.required, this.noWhitespaceValidator]],\r\n LastName: [''],\r\n EmailID: ['', [Validators.required, this.noWhitespaceValidator]],\r\n Address: [''],\r\n ZipCode: [''],\r\n City: [''],\r\n District: [''],\r\n State: [''],\r\n Country: [''],\r\n ContactNumber: ['', [Validators.required, this.noWhitespaceValidator]],\r\n GDPRUserStatus: [''],\r\n IsTermsAccepted: ['', [Validators.required, this.validateIfChecked]]\r\n });\r\n // console.log(this.minsideOwnerInfo);\r\n // if(this.minsideOwnerInfo){\r\n // var obj = this.minsideOwnerInfo;\r\n // this.PersonalForm.controls['FirstName'].patchValue(obj.FirstName);\r\n // this.PersonalForm.controls['LastName'].patchValue(obj.LastName);\r\n // this.PersonalForm.controls['EmailID'].patchValue(obj.Email);\r\n // this.PersonalForm.controls['Address'].patchValue(obj.Address);\r\n // this.PersonalForm.controls['ZipCode'].patchValue(obj.ZipCode);\r\n // this.PersonalForm.controls['City'].patchValue(obj.City);\r\n // this.PersonalForm.controls['ContactNumber'].patchValue(obj.Phone);\r\n // this.PersonalForm.controls['District'].patchValue(obj.District);\r\n // this.PersonalForm.controls['State'].patchValue(obj.State);\r\n // this.PersonalForm.controls['Country'].patchValue(obj.Country);\r\n\r\n // }\r\n // else{\r\n this.currentUser = this.authenticationService.currentUserValue;\r\n if (this.currentUser) {\r\n this.UserService.getUserByEmailID(this.currentUser.EmailID, this.currentUser.Provider).subscribe(res => {\r\n this.PersonalInfo = res.data;\r\n this.PersonalForm.controls['FirstName'].patchValue(this.PersonalInfo.FirstName)\r\n this.PersonalForm.controls['LastName'].patchValue(this.PersonalInfo.LastName)\r\n this.PersonalForm.controls['EmailID'].patchValue(this.PersonalInfo.EmailID)\r\n this.PersonalForm.controls['ContactNumber'].patchValue(this.PersonalInfo.ContactNumber)\r\n if (this.PersonalInfo.Address) {\r\n this.PersonalForm.controls['Address'].patchValue(this.PersonalInfo.Address)\r\n this.PersonalForm.controls['ZipCode'].patchValue(this.PersonalInfo.Zipcode)\r\n this.PersonalForm.controls['City'].patchValue(this.PersonalInfo.City)\r\n this.PersonalForm.controls['District'].patchValue(this.PersonalInfo.District)\r\n this.PersonalForm.controls['State'].patchValue(this.PersonalInfo.State)\r\n this.PersonalForm.controls['Country'].patchValue(this.PersonalInfo.Country)\r\n }\r\n else if (this.PersonalInfo.ContactNumber) {\r\n this.ownerService.getUserDetailByPhone(this.PersonalInfo.ContactNumber).subscribe(resp => {\r\n if (resp.Data.IsSuccess) {\r\n this.PersonalForm.controls['Address'].patchValue(resp.Data.fullstreet)\r\n this.PersonalForm.controls['ZipCode'].patchValue(resp.Data.zip)\r\n this.PersonalForm.controls['City'].patchValue(resp.Data.city)\r\n this.PersonalForm.controls['District'].patchValue(resp.Data.district)\r\n this.PersonalForm.controls['State'].patchValue(resp.Data.state)\r\n this.PersonalForm.controls['Country'].patchValue(resp.Data.country)\r\n } else {\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n });\r\n }\r\n\r\n });\r\n } else {\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n });\r\n }\r\n\r\n });\r\n\r\n } else {\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n });\r\n }\r\n //} \r\n //load Places Autocomplete\r\n\r\n this.mapsAPILoader.load().then(() => {\r\n this.geoCoder = new google.maps.Geocoder;\r\n\r\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n types: []\r\n });\r\n autocomplete.addListener(\"place_changed\", () => {\r\n this.ngZone.run(() => {\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n // Get each component of the address from the place details,\r\n // and then fill-in the corresponding field on the form.\r\n this.PersonalForm.controls['Address'].patchValue(place.formatted_address);\r\n\r\n for (var i = 0; i < place.address_components.length; i++) {\r\n var addressType = place.address_components[i].types[0];\r\n if (this.componentForm[addressType]) {\r\n var val = place.address_components[i][this.componentForm[addressType]];\r\n if (addressType == \"administrative_area_level_1\") {\r\n // this.state = val;\r\n }\r\n if (addressType == \"locality\") {\r\n this.PersonalForm.controls['City'].patchValue(val)\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.PersonalForm.controls['ZipCode'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_1\") {\r\n this.PersonalForm.controls['State'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_2\") {\r\n this.PersonalForm.controls['District'].patchValue(val)\r\n }\r\n if (addressType == \"country\") {\r\n this.PersonalForm.controls['Country'].patchValue(val)\r\n }\r\n }\r\n }\r\n\r\n //set latitude, longitude and zoom\r\n this.lat = place.geometry.location.lat();\r\n this.lng = place.geometry.location.lng();\r\n this.zoom = 12;\r\n });\r\n });\r\n });\r\n\r\n\r\n }\r\n @Output() onPosted = new EventEmitter();\r\n @Output() onHide = new EventEmitter();\r\n get e() {\r\n return this.PersonalForm.controls;\r\n }\r\n showPetInfo() {\r\n this.onHide.emit(\"show\")\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n // console.log(this.PersonalForm.value);\r\n if (this.PersonalForm.invalid) {\r\n this.scrollToError();\r\n return;\r\n }\r\n this.onPosted.emit(this.PersonalForm.value)\r\n\r\n }\r\n toggleFoundSuggestion() {\r\n this.showFoundSuggestion = !this.showFoundSuggestion;\r\n }\r\n\r\n public noWhitespaceValidator(control: FormControl) {\r\n if (control.value && control.value.length > 0) {\r\n const isWhitespace = (control.value || '').trim().length === 0;\r\n const isValid = !isWhitespace;\r\n return isValid ? null : { 'whitespace': true };\r\n }\r\n }\r\n public validateIfChecked(control: FormControl) {\r\n if (control.value) {\r\n return null\r\n }\r\n else {\r\n return { 'checked': true };\r\n }\r\n\r\n }\r\n private setCurrentLocation() {\r\n if (\"geolocation\" in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.lat = position.coords.latitude;\r\n this.lng = position.coords.longitude;\r\n this.zoom = 12;\r\n this.getAddress(this.lat, this.lng);\r\n });\r\n }\r\n }\r\n\r\n getAddress(latitude, longitude) {\r\n this.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\r\n // console.log(results);\r\n // console.log(status);\r\n if (status === 'OK') {\r\n if (results[0]) {\r\n this.zoom = 12;\r\n // console.log(results[0].formatted_address);\r\n this.PersonalForm.controls['Address'].patchValue(results[0].formatted_address)\r\n let place = results[0];\r\n for (var i = 0; i < place.address_components.length; i++) {\r\n var addressType = place.address_components[i].types[0];\r\n if (this.componentForm[addressType]) {\r\n var val = place.address_components[i][this.componentForm[addressType]];\r\n // console.log(addressType);\r\n if (addressType == \"administrative_area_level_1\") {\r\n // this.PersonalForm.controls['State'].patchValue(val)\r\n // this.state = val;\r\n }\r\n if (addressType == \"locality\") {\r\n this.PersonalForm.controls['City'].patchValue(val)\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.PersonalForm.controls['ZipCode'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_1\") {\r\n this.PersonalForm.controls['State'].patchValue(val)\r\n }\r\n if (addressType == \"administrative_area_level_2\") {\r\n this.PersonalForm.controls['District'].patchValue(val)\r\n }\r\n if (addressType == \"country\") {\r\n this.PersonalForm.controls['Country'].patchValue(val)\r\n }\r\n // console.log(val)\r\n\r\n }\r\n }\r\n\r\n } else {\r\n window.alert('No results found');\r\n }\r\n } else {\r\n window.alert('Geocoder failed due to: ' + status);\r\n }\r\n\r\n });\r\n }\r\n getDetailByPhone() {\r\n let phone = this.PersonalForm.controls['ContactNumber'].value;\r\n let address = this.PersonalForm.controls['Address'].value;\r\n\r\n if (phone != '' && address == '') {\r\n this.SpinnerService.show();\r\n\r\n this.ownerService.getUserDetailByPhone(phone).subscribe(resp => {\r\n if (resp.Data.IsSuccess) {\r\n this.PersonalForm.controls['Address'].patchValue(resp.Data.fullstreet)\r\n this.PersonalForm.controls['ZipCode'].patchValue(resp.Data.zip)\r\n this.PersonalForm.controls['City'].patchValue(resp.Data.city)\r\n this.PersonalForm.controls['District'].patchValue(resp.Data.district)\r\n this.PersonalForm.controls['State'].patchValue(resp.Data.state)\r\n this.PersonalForm.controls['Country'].patchValue(resp.Data.country)\r\n }\r\n\r\n });\r\n this.SpinnerService.hide();\r\n\r\n }\r\n\r\n }\r\n\r\n scrollTo(el: Element): void {\r\n if (el) {\r\n el.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n }\r\n }\r\n\r\n scrollToError(): void {\r\n const firstElementWithError = document.querySelector('.ng-invalid[formControlName]');\r\n this.scrollTo(firstElementWithError);\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n

\r\n 1\r\n {{ 'Contact information' | translate }}\r\n 2\r\n

\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Name is required' |translate}}
\r\n
{{'Name is of more then 3 char'|translate}}
\r\n
{{'Name is not more then 60 char'|translate}}
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Email is required'| translate}}
\r\n
{{'Please Enter a valid Email-ID'| translate}}
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Phone Number is required' | translate}}
\r\n
{{'Phone Number is of more then 5 char'| translate}}
\r\n
{{'Phone Number is not more then 10 char'| translate}}
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n {{ 'Accept terms and conditions' | translate }}\r\n
\r\n
{{'Please accept terms and conditions'| translate}}
\r\n
{{'Please accept terms and conditions'| translate}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n

{{''| translate}}

\r\n
","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { PetsService } from '../../../../_services';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { MapsAPILoader } from '@agm/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AuthenticationService, OwnerService } from '../../../../_services';\r\nimport { AuthService } from \"angularx-social-login\";\r\nimport { SocialUser } from \"angularx-social-login\";\r\nimport { DatePipe } from '@angular/common';\r\nimport { AppComponent } from '../../../../app.component';\r\nimport { ImageCroppedEvent } from 'ngx-image-cropper';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { DateAdapter } from '@angular/material';\r\n\r\n@Component({\r\n selector: 'app-lostpetinfo',\r\n templateUrl: './petinfo.component.html',\r\n styleUrls: ['./petinfo.component.scss']\r\n})\r\n\r\nexport class LostPetinfoComponent implements OnInit {\r\n\r\n registerForm: FormGroup;\r\n showFoundSuggestion: boolean = true;\r\n isChipIdToShowInDetail:boolean=false;\r\n @Input() showPersonalInfo;\r\n @Input() minsidePetInfo: any;\r\n public lat: number;\r\n public lng: number;\r\n public zoom: number;\r\n private geoCoder;\r\n public Area: any;\r\n private user: SocialUser;\r\n private loggedIn: boolean;\r\n minDate: Date;\r\n maxDate: Date;\r\n lostMaxDate: Date;\r\n chipFound: string = \"\";\r\n petImgUrl:string = null\r\n\r\n @ViewChild('search')\r\n\r\n private searchElementRef: ElementRef;\r\n\r\n constructor(\r\n private dateAdapter: DateAdapter,\r\n public app: AppComponent,\r\n private pets: PetsService,\r\n private formbuilder: FormBuilder,\r\n private mapsAPILoader: MapsAPILoader,\r\n private ngZone: NgZone,\r\n private router: Router,\r\n private authService: AuthService,\r\n private datePipe: DatePipe,\r\n private modalService: NgbModal,\r\n private authenticationService: AuthenticationService,\r\n ) {\r\n this.dateAdapter.setLocale('en-GB'); //dd/MM/yyyy\r\n // const currentYear = new Date().getFullYear();\r\n // const currentDate = new Date().getDate();\r\n\r\n // this.minDate = new Date(currentYear - 20, 0, 1);\r\n var dateChangedvalue = new Date();\r\n this.maxDate = dateChangedvalue;\r\n this.lostMaxDate = dateChangedvalue;\r\n }\r\n\r\n country: any;\r\n MasterSpecies: any;\r\n MasterBreeds: any;\r\n submitted = false;\r\n IsChipped = false;\r\n currentUser: any;\r\n fileData: File = null;\r\n croppedFileData: any = null;\r\n previewUrl: any = \"assets/img/user_add.png\";\r\n fileUploadProgress: string = null;\r\n uploadedFilePath: string = null;\r\n imageError = \"\";\r\n closeResult = \"\";\r\n isMinsideUser: boolean = false;\r\n\r\n componentForm = {\r\n street_number: 'short_name',\r\n route: 'long_name',\r\n locality: 'long_name',\r\n sublocality_level_1: 'long_name',\r\n sublocality_level_2: 'long_name',\r\n administrative_area_level_1: 'long_name',\r\n administrative_area_level_2: 'long_name',\r\n country: 'long_name',\r\n postal_code: 'short_name',\r\n postal_town: 'long_name'\r\n\r\n };\r\n\r\n imageChangedEvent: any = '';\r\n croppedImage: any = '';\r\n\r\n fileChangeEvent(event: any): void {\r\n\r\n }\r\n imageCropped(event: ImageCroppedEvent) {\r\n this.croppedImage = event.base64;\r\n }\r\n imageLoaded() {\r\n // show cropper\r\n }\r\n cropperReady() {\r\n // cropper ready\r\n }\r\n loadImageFailed() {\r\n // show message\r\n }\r\n\r\n open(content) {\r\n this.previewUrl = \"assets/img/user_add.png\";\r\n this.croppedFileData = \"\";\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.previewUrl = this.croppedImage;\r\n this.croppedFileData = this.croppedImage;\r\n //return false;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n this.registerForm.controls['Image'].patchValue(\"\");\r\n //return false;\r\n });\r\n return false;\r\n }\r\n private getDismissReason(reason: any): string {\r\n this.registerForm.controls['Image'].patchValue(\"\");\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n UpdateDobMaxDate() {\r\n var dateChangedvalue = this.registerForm.controls[\"LostFoundDate\"].value;\r\n dateChangedvalue.setDate(dateChangedvalue.getDate() - 1);\r\n this.lostMaxDate = dateChangedvalue;\r\n }\r\n ngOnInit() {\r\n\r\n this.registerForm = this.formbuilder.group({\r\n IsChipped: ['0'],\r\n ChipID: [''],\r\n PetName: ['', [Validators.required, this.noWhitespaceValidator]],\r\n MasterSpeciesID: ['', Validators.required],\r\n MasterBreedID: ['', Validators.required],\r\n LostFoundDate: [new Date(), Validators.required],\r\n DateOfBirth: [''],\r\n Color: [''],\r\n Gender: [1],\r\n HairType: ['1'],\r\n Area: ['', Validators.required],\r\n State: ['', [Validators.required, this.noWhitespaceValidator]],\r\n Commune: ['', [this.noWhitespaceValidator]],\r\n District: ['', [this.noWhitespaceValidator]],\r\n City: ['', [Validators.required, this.noWhitespaceValidator]],\r\n Country: ['Norway', Validators.required],\r\n ZipCode: ['', Validators.required],\r\n AdditionalInfo: [''],\r\n ImagePath: [''],\r\n Company: [''],\r\n Image: [''],\r\n croppedFileData: [''],\r\n lat: [''],\r\n lng: [''],\r\n OperationTypeID: [''],\r\n IsChipIDinDetail:['0']\r\n });\r\n\r\n this.showPersonalInfo = false;\r\n this.registerForm.value.IsChipped = 0;\r\n\r\n this.pets.getCountry().subscribe(res => {\r\n this.country = res;\r\n });\r\n this.pets.getSpecies().subscribe(species => {\r\n this.MasterSpecies = species;\r\n\r\n });\r\n this.currentUser = this.authenticationService.currentUserValue;\r\n if (this.currentUser.Provider == 'MINSIDE') {\r\n this.isMinsideUser = true;\r\n this.registerForm.controls['LostFoundDate'].patchValue('');\r\n }\r\n else {\r\n //load Places Autocomplete\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n this.geoCoder = new google.maps.Geocoder;\r\n\r\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n types: []\r\n });\r\n autocomplete.addListener(\"place_changed\", () => {\r\n this.ngZone.run(() => {\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n this.fillAddress(place)\r\n //set latitude, longitude and zoom\r\n this.lat = place.geometry.location.lat();\r\n this.lng = place.geometry.location.lng();\r\n this.zoom = 15;\r\n this.getSuggestion();\r\n });\r\n });\r\n });\r\n }\r\n\r\n\r\n if (this.minsidePetInfo) {\r\n var genderValue = 0;\r\n var hairtypeValue = 0;\r\n var obj = this.minsidePetInfo;\r\n var dob = null;\r\n if (obj.BirthYear && obj.BirthMonth && obj.BirthDate) {\r\n dob = new Date(obj.BirthYear, obj.BirthMonth, obj.BirthDate);\r\n }\r\n this.registerForm.controls['IsChipped'].patchValue('1');\r\n this.registerForm.controls['ChipID'].patchValue(obj.ChipId);\r\n\r\n if (obj.ChipId) {\r\n this.registerForm.controls['IsChipped'].patchValue('1');\r\n this.registerForm.controls['IsChipped'].disable();\r\n this.registerForm.controls['ChipID'].patchValue(obj.ChipId);\r\n this.registerForm.controls['ChipID'].disable();\r\n }\r\n this.registerForm.controls['PetName'].patchValue(obj.PetName);\r\n // debugger;\r\n this.registerForm.controls['Company'].patchValue(this.currentUser.Company)\r\n if (obj.PetName) {\r\n this.registerForm.controls['PetName'].disable();\r\n }\r\n this.registerForm.controls['MasterSpeciesID'].patchValue(obj.SpeciesId);\r\n if (obj.SpeciesId) {\r\n this.registerForm.controls['MasterSpeciesID'].patchValue(obj.SpeciesId);\r\n this.registerForm.controls['MasterSpeciesID'].disable();\r\n }\r\n\r\n this.registerForm.controls['DateOfBirth'].patchValue(dob);\r\n if (dob) {\r\n this.registerForm.controls['DateOfBirth'].disable();\r\n }\r\n this.registerForm.controls['Color'].patchValue(obj.Color);\r\n if (obj.Color) {\r\n this.registerForm.controls['Color'].disable();\r\n }\r\n\r\n if (obj.Gender) {\r\n if (obj.Gender.toLowerCase() == \"male\") {\r\n genderValue = 1;\r\n } else if (obj.Gender.toLowerCase() == \"female\") {\r\n genderValue = 2;\r\n }\r\n }\r\n\r\n this.registerForm.controls['Gender'].patchValue(genderValue);\r\n if (obj.HairType) {\r\n if (obj.HairType.toLowerCase() == 'longhair') {\r\n hairtypeValue = 1;\r\n }\r\n else if (obj.HairType.toLowerCase() == 'sorthair') {\r\n hairtypeValue = 2;\r\n }\r\n }\r\n this.registerForm.controls['HairType'].patchValue(hairtypeValue);\r\n\r\n\r\n this.pets.getBreeds(obj.SpeciesId).subscribe(breeds => {\r\n this.MasterBreeds = breeds;\r\n this.registerForm.controls['MasterBreedID'].patchValue(obj.BreedId);\r\n let data = this.MasterBreeds.find(ob => ob.Value === obj.BreedId);\r\n\r\n\r\n if (data) {\r\n this.registerForm.controls['MasterBreedID'].disable();\r\n } else {\r\n if (obj.BreedName) {\r\n let data1 = this.MasterBreeds.find(ob => ob.Text.toLowerCase() === obj.BreedName.toLowerCase());\r\n if (data1) {\r\n obj.BreedId = data1.Value; // in case id does not match patch with Name\r\n this.registerForm.controls['MasterBreedID'].disable();\r\n }\r\n }\r\n }\r\n this.registerForm.controls['MasterBreedID'].patchValue(obj.BreedId);\r\n this.getSuggestion();\r\n });\r\n }\r\n }\r\n\r\n get petf() {\r\n return this.registerForm.controls;\r\n }\r\n\r\n getSuggestion() {\r\n this.chipFound = \"\";\r\n\r\n if (this.minsidePetInfo) { // In case you Minside Pet\r\n let filters = {\r\n \"SearchFilters\": {\r\n \"SpeciesID\": this.registerForm.getRawValue().MasterSpeciesID,\r\n \"BreedID\": this.registerForm.getRawValue().MasterBreedID,\r\n \"lat\": this.lat,\r\n \"lng\": this.lng,\r\n \"radiousDistance\": 20,\r\n \"OperationTypeID\": 2\r\n }\r\n }\r\n this.onPosted.emit(filters)\r\n } else {\r\n let filters = {\r\n \"SearchFilters\": {\r\n \"SpeciesID\": this.registerForm.value.MasterSpeciesID,\r\n \"BreedID\": this.registerForm.value.MasterBreedID,\r\n \"lat\": this.lat,\r\n \"lng\": this.lng,\r\n \"radiousDistance\": 10,\r\n \"OperationTypeID\": 2\r\n }\r\n }\r\n this.onPosted.emit(filters)\r\n }\r\n\r\n\r\n }\r\n\r\n getChipInfo() {\r\n this.registerForm.controls['PetName'].patchValue(\"\");\r\n this.registerForm.controls['MasterSpeciesID'].patchValue(\"\");\r\n this.registerForm.controls['Color'].patchValue(\"\");\r\n this.registerForm.controls['MasterBreedID'].patchValue(\"\");\r\n\r\n // this.pets.IsChipIDExists(this.registerForm.value.ChipID, this.registerForm.value.OperationTypeID).subscribe(IsChipExist =>{\r\n this.pets.IsChipIDExists(this.registerForm.value.ChipID, 1).subscribe(IsChipExist => {\r\n if (IsChipExist == true && this.registerForm.value.ChipID.trim() != \"\") {\r\n // this.chipFound = \"Pet with ChipID \" + this.registerForm.value.ChipID + \" Already exists\";\r\n this.chipFound = \"Kjæledyr med ChipID \" + this.registerForm.value.ChipID + \" Eksisterer allerede\";\r\n this.registerForm.controls['ChipID'].patchValue(\"\");\r\n }\r\n else {\r\n this.pets.getChipInfo(this.registerForm.value.ChipID).subscribe(chipInfo => {\r\n var genderValue: any;\r\n var hairtypeValue: any;\r\n if (!chipInfo.IsAlive)// data from api came true as false and false as true.\r\n {\r\n if (chipInfo.ChipId) {\r\n var dob = null;\r\n if (chipInfo.BirthYear && chipInfo.BirthMonth && chipInfo.BirthDate) {\r\n dob = new Date(chipInfo.BirthYear, chipInfo.BirthMonth, chipInfo.BirthDate);\r\n }\r\n //PetOriginalPhoto\r\n if(chipInfo.PetPhoto !== ''){\r\n this.previewUrl = chipInfo.PetPhoto;\r\n }\r\n this.petImgUrl = chipInfo.PetOriginalPhoto;\r\n this.registerForm.controls['PetName'].patchValue(chipInfo.PetName);\r\n this.registerForm.controls['MasterSpeciesID'].patchValue(chipInfo.SpeciesID);\r\n this.registerForm.controls['Color'].patchValue(chipInfo.PetColor);\r\n this.registerForm.controls['DateOfBirth'].patchValue(dob);\r\n // this.registerForm.controls['Gender'].patchValue(genderValue);\r\n this.registerForm.controls['LostFoundDate'].patchValue(new Date());\r\n if (chipInfo.PetSex) {\r\n if (chipInfo.PetSex.toLowerCase() == \"male\" || chipInfo.PetSex.toLowerCase() == \"hanndyr\") {\r\n genderValue = 1;\r\n } else if (chipInfo.PetSex.toLowerCase() == \"female\" || chipInfo.PetSex.toLowerCase() == \"hunndyr\") {\r\n genderValue = 2;\r\n }\r\n }\r\n this.registerForm.controls['Gender'].patchValue(genderValue);\r\n if (chipInfo.HairType) {\r\n if (chipInfo.HairType.toLowerCase() == 'longhair') {\r\n hairtypeValue = 1;\r\n }\r\n else if (chipInfo.HairType.toLowerCase() == 'sorthair') {\r\n hairtypeValue = 2;\r\n }\r\n }\r\n this.registerForm.controls['HairType'].patchValue(hairtypeValue);\r\n this.pets.getBreeds(chipInfo.SpeciesID).subscribe(breeds => {\r\n this.MasterBreeds = breeds;\r\n this.registerForm.controls['MasterBreedID'].patchValue(chipInfo.BreedID);\r\n this.getSuggestion();\r\n });\r\n }\r\n else {\r\n // this.chipFound = \"No data found for this chipId. Please fill details below.\"\r\n this.chipFound = \"Ingen data funnet for denne brikken. Vennligst fyll detaljene nedenfor\";\r\n }\r\n }\r\n else {\r\n var chipID = this.registerForm.value.ChipID;\r\n this.registerForm.controls['ChipID'].patchValue(\"\");\r\n this.chipFound = \"Kjæledyr med ChipId :\" + chipID + \" er død, og du kan ikke rapportere dette kjæledyret\";\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n getBreeds() {\r\n this.registerForm.controls['MasterBreedID'].patchValue(\"\");\r\n this.pets.getBreeds(this.registerForm.value.MasterSpeciesID).subscribe(breeds => {\r\n this.MasterBreeds = breeds;\r\n this.getSuggestion();\r\n });\r\n }\r\n @Output() onPosted = new EventEmitter();\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.imageError) {\r\n this.scrollToError();\r\n return;\r\n }\r\n\r\n if(this.registerForm.value.Image == '' && this.registerForm.value.IsChipped == '0'){\r\n this.imageError = 'Pet Image is required';\r\n const ele = document.getElementById('error-msg');\r\n this.scrollTo(ele);\r\n return;\r\n }\r\n if(this.registerForm.value.Image == '' && this.registerForm.value.IsChipped == '1' && this.previewUrl == 'assets/img/user_add.png'){\r\n this.imageError = 'Pet Image is required';\r\n const ele = document.getElementById('error-msg');\r\n this.scrollTo(ele);\r\n return;\r\n }\r\n \r\n if (this.registerForm.invalid) {\r\n this.scrollToError();\r\n return;\r\n }\r\n // debugger;\r\n if(this.petImgUrl && !this.fileData){\r\n this.registerForm.controls['ImagePath'].patchValue(this.petImgUrl);\r\n }else{\r\n this.registerForm.controls['ImagePath'].patchValue(this.fileData);\r\n }\r\n this.registerForm.controls['Company'].patchValue(this.currentUser.Company);\r\n this.registerForm.controls['croppedFileData'].patchValue(this.croppedFileData);\r\n this.registerForm.controls['lat'].patchValue(this.lat);\r\n this.registerForm.controls['lng'].patchValue(this.lng);\r\n if (this.minsidePetInfo) {\r\n this.onPosted.emit(this.registerForm.getRawValue())\r\n } else {\r\n this.onPosted.emit(this.registerForm.value)\r\n }\r\n const firstElementWithError = document.querySelector('.xng-breadcrumb-root');\r\n this.scrollTo(firstElementWithError);\r\n //this.router.navigate(['/personal']);\r\n\r\n }\r\n\r\n private setCurrentLocation() {\r\n if (\"geolocation\" in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.lat = position.coords.latitude;\r\n this.lng = position.coords.longitude;\r\n this.zoom = 15;\r\n this.getAddress(this.lat, this.lng);\r\n });\r\n }\r\n }\r\n\r\n toggleFoundSuggestion() {\r\n this.showFoundSuggestion = !this.showFoundSuggestion;\r\n }\r\n\r\n markerDragEnd($event: any) {\r\n this.lat = $event.coords.lat;\r\n this.lng = $event.coords.lng;\r\n this.getAddress(this.lat, this.lng);\r\n }\r\n\r\n getAddress(latitude, longitude) {\r\n this.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\r\n if (status === 'OK') {\r\n if (results[0]) {\r\n this.fillAddress(results[0])\r\n } else {\r\n window.alert('No results found');\r\n }\r\n } else {\r\n window.alert('Geocoder failed due to: ' + status);\r\n }\r\n\r\n });\r\n }\r\n\r\n fillAddress(mapresult) {\r\n this.zoom = 15;\r\n let area = mapresult.formatted_address;\r\n //this.registerForm.controls['Area'].patchValue(results[0].formatted_address)\r\n let place = mapresult;\r\n for (var i = 0; i < place.address_components.length; i++) {\r\n var addressType = place.address_components[i].types[0];\r\n if (this.componentForm[addressType]) {\r\n var val = place.address_components[i][this.componentForm[addressType]];\r\n\r\n if (addressType == \"administrative_area_level_1\") {\r\n this.registerForm.controls['State'].patchValue(val)\r\n area = area.replace(val, \"\")\r\n\r\n // this.state = val;\r\n }\r\n if (addressType == \"administrative_area_level_2\") {\r\n this.registerForm.controls['District'].patchValue(val)\r\n area = area.replace(val, \"\")\r\n\r\n // this.state = val;\r\n }\r\n if (addressType == \"country\") {\r\n //this.registerForm.controls['Country'].patchValue(val)\r\n area = area.replace(val, \"\")\r\n // this.state = val;\r\n }\r\n if (addressType == \"locality\") {\r\n this.registerForm.controls['City'].patchValue(val)\r\n area = area.replace(val + \", \", \"\")\r\n // this.state = val;\r\n }\r\n if (addressType == \"postal_town\") {\r\n this.registerForm.controls['City'].patchValue(val)\r\n area = area.replace(val + \", \", \"\")\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.registerForm.controls['ZipCode'].patchValue(val)\r\n // area = area.replace(val + \", \", \"\")\r\n area = area.replace(val+\", \" , \"\")\r\n // this.state = val;\r\n }\r\n if (addressType == \"postal_code\") {\r\n this.registerForm.controls['ZipCode'].patchValue(val)\r\n // area = area.replace(val + \", \", \"\")\r\n area = area.replace(val , \"\")\r\n // this.state = val;\r\n }\r\n\r\n\r\n }\r\n }\r\n area = area.trim();\r\n let comma = area.substring(area.length, area.length - 1)\r\n if (comma == \",\") {\r\n area = area.substring(0, area.length - 1)\r\n }\r\n area = area.trim();\r\n this.registerForm.controls['Area'].patchValue(area)\r\n }\r\n\r\n fileProgress(fileInput: any) {\r\n this.imageError = null;\r\n if (fileInput.target.files && fileInput.target.files[0]) {\r\n // Size Filter Bytes\r\n const max_size = 15000000;\r\n const allowed_types = ['image/png', 'image/jpeg'];\r\n const max_height = 15200;\r\n const max_width = 25600;\r\n\r\n if (fileInput.target.files[0].size > max_size) {\r\n this.imageError =\r\n 'Maximum size allowed is ' + max_size / 1000 + 'kb';\r\n\r\n return false;\r\n }\r\n if (!allowed_types.includes(fileInput.target.files[0].type)) {\r\n this.imageError = 'Only Images are allowed ( JPG | PNG )';\r\n return false;\r\n }\r\n\r\n let Content: HTMLElement = document.getElementById(\"contentNew\") as HTMLElement\r\n Content.click();\r\n this.imageChangedEvent = event;\r\n this.fileData = fileInput.target.files[0];\r\n // this.preview();\r\n }\r\n }\r\n\r\n preview() {\r\n // Show preview \r\n var mimeType = this.fileData.type;\r\n if (mimeType.match(/image\\/*/) == null) {\r\n return;\r\n }\r\n\r\n var reader = new FileReader();\r\n reader.readAsDataURL(this.fileData);\r\n reader.onload = (_event) => {\r\n this.previewUrl = reader.result;\r\n }\r\n }\r\n public noWhitespaceValidator(control: FormControl) {\r\n if (control.value && control.value.length > 0) {\r\n const isWhitespace = (control.value || '').trim().length === 0;\r\n const isValid = !isWhitespace;\r\n return isValid ? null : { 'whitespace': true };\r\n }\r\n }\r\n\r\n public onIsChippedChange() {\r\n this.registerForm.controls[\"ChipID\"].clearValidators();\r\n if (this.registerForm.controls.IsChipped.value == 1) {\r\n this.registerForm.controls[\"ChipID\"].setValidators([Validators.required, this.noWhitespaceValidator]);\r\n this.registerForm.controls[\"IsChipIDinDetail\"].patchValue(0);\r\n }\r\n this.registerForm.controls[\"ChipID\"].updateValueAndValidity()\r\n }\r\n\r\n public onClickFillDate() {\r\n this.registerForm.controls['LostFoundDate'].patchValue(new Date())\r\n }\r\n public onClickFillAddress() {\r\n //load Places Autocomplete\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n this.geoCoder = new google.maps.Geocoder;\r\n\r\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\r\n types: []\r\n });\r\n autocomplete.addListener(\"place_changed\", () => {\r\n this.ngZone.run(() => {\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n this.fillAddress(place)\r\n //set latitude, longitude and zoom\r\n this.lat = place.geometry.location.lat();\r\n this.lng = place.geometry.location.lng();\r\n this.zoom = 15;\r\n this.getSuggestion();\r\n });\r\n });\r\n });\r\n }\r\n\r\n scrollTo(el: Element): void {\r\n if (el) {\r\n el.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n }\r\n }\r\n\r\n scrollToError(): void {\r\n const firstElementWithError = document.querySelector('.ng-invalid[formControlName]');\r\n this.scrollTo(firstElementWithError);\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n\r\n","
\r\n
\r\n

\r\n 1\r\n {{ 'Lost Pet Info' | translate }}\r\n 2\r\n

\r\n
\r\n
\r\n
\r\n \"\"\r\n \r\n
\r\n
{{ imageError }}
\r\n
\r\n
{{'Pet Image is required' | translate}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
{{'Chip Id is required' | translate}}
\r\n
{{'Chip Id is of more then 4 char'| translate}}
\r\n
{{'Chip Id is not more then 20 char' | translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n {{ chipFound }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Pet name is required'| translate}}
\r\n
{{'Pet name is of more then 3 char'| translate}}
\r\n
{{'Pet name is not more then 60 char' | translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'Species is required' | translate}}
\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
{{'Breed is required'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n {{ 'Choose a date' | translate }}\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n {{ 'Choose a date' | translate }}\r\n \r\n \r\n \r\n \r\n
\r\n
{{'Date Of found is required'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n {{ 'MapInfo' | translate }}\r\n
\r\n
{{'Area is required'| translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{'Zipcode is required'| translate}}
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'City is required'| translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'Space is not allowed'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
{{'State is required'| translate}}
\r\n
{{'Space is not allowed'|\r\n translate}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{'Country is required'| translate}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{'Crop Image'| translate}}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'Preview'|translate}}
\r\n \r\n
\r\n
\r\n\r\n
","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { OwnerService, AuthenticationService } from '../../../../_services';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\n\r\n@Component({\r\n selector: 'app-lost-petlist',\r\n templateUrl: './petlist.component.html'\r\n})\r\n \r\nexport class LostPetListComponent implements OnInit {\r\n\r\n petList : any;\r\n petCount : any;\r\n minsideOwnerDetail : any;\r\n currentUser:any;\r\n @Output() onMarkLost = new EventEmitter();\r\n constructor(private ownerService: OwnerService, private authenticationService : AuthenticationService,\r\n private router: Router,private SpinnerService: NgxSpinnerService) {\r\n //constructor() {}\r\n }\r\n ngOnInit(){\r\n this.currentUser = this.authenticationService.currentUserValue; \r\n if (this.currentUser.AuthToken != ''){\r\n var authToken = this.currentUser.AuthToken;\r\n this.SpinnerService.show();\r\n this.ownerService.getOwnerPetList(authToken).subscribe((res: any) => { \r\n this.SpinnerService.hide(); \r\n if (res.Status ==2){\r\n // alert(\"Authentication Token is expired. Please login again\");\r\n alert(\"Autentiseringstoken er utløpt. Vennligst logg inn igjen\");\r\n //Remove Local Storage\r\n localStorage.removeItem('currentUser');\r\n localStorage.removeItem('socialusers');\r\n this.router.navigate([\"/login\"]);\r\n }\r\n if (res.Data.lostAndFoundPetDetails == null ){\r\n this.petList = null;\r\n this.petCount = 0;\r\n }else{\r\n this.minsideOwnerDetail ={\r\n \"FirstName\" : res.Data.FirstName,\r\n \"LastName\" : res.Data.LastName,\r\n \"Email\" : res.Data.Email,\r\n \"Address\" : res.Data.Address,\r\n \"ZipCode\" : res.Data.ZipCode,\r\n \"City\" : res.Data.City,\r\n \"Phone\" : res.Data.Phone,\r\n };\r\n this.petList = res.Data.lostAndFoundPetDetails;\r\n this.petCount = res.Data.lostAndFoundPetDetails.length;\r\n if (this.petCount == 1){\r\n this.markPetAsLost(this.petList[0]);\r\n }\r\n }\r\n }) \r\n }else{\r\n // Need to remove local storage ???\r\n this.router.navigate(['/login']);\r\n }\r\n \r\n }\r\n markPetAsLost(pet: any): void {\r\n if(confirm(\"Are you sure you want to mark \"+ pet.PetName + \" as Lost ?\")) {\r\n let petData = {\r\n \"petDetail\": pet,\r\n \"ownerDetail\" : this.minsideOwnerDetail,\r\n \"source\":\"MINSIDE\"\r\n }\r\n this.onMarkLost.emit(petData);\r\n }\r\n }\r\n\r\n}","
\r\n
\r\n
\r\n

{{'Minside Pet List' | translate}}

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

{{item.PetName}}

\r\n

{{item.SpeciesName}}, {{item.BreedName}}

\r\n

{{item.ChipId}}

\r\n
\r\n
\r\n
\r\n Mark Lost\r\n
\r\n
\r\n
\r\n

{{'No Record Found'|translate}}

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

{{'Please Wait.'| translate}}

\r\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-report',\n templateUrl: './report.component.html',\n styleUrls: ['./report.component.scss']\n})\nexport class ReportComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","

report works!

\n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Router } from '@angular/router';\n\n\n@Component({\n selector: 'app-thanks',\n templateUrl: './thanks.component.html',\n styleUrls: ['./thanks.component.scss']\n})\nexport class ThanksComponent implements OnInit {\n\n \n PersonalForm: FormGroup;\n\n constructor() { }\n \n ngOnInit() {\n\n }\n \n}\n","
\n
\n \n
\n {{'Report has been submitted' | translate}}\n
\n \n
\n
\n ","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\nimport { PetsService } from '../../_services';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { MapsAPILoader } from '@agm/core';\nimport { Router, ActivatedRoute } from '@angular/router';\n\nimport { AuthService } from \"angularx-social-login\";\nimport { SocialUser } from \"angularx-social-login\";\nimport { DatePipe } from '@angular/common';\nimport { AppComponent } from '../../app.component';\nimport { ImageCroppedEvent } from 'ngx-image-cropper';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { environment } from '../../../environments/environment';\nimport { DateAdapter } from '@angular/material';\n\n@Component({\n selector: 'app-updatepetinfo',\n templateUrl: './updatepetinfo.component.html',\n styleUrls: ['./updatepetinfo.component.scss']\n})\n\nexport class UpdatepetinfoComponent implements OnInit {\n\n petUpdateForm: FormGroup;\n showFoundSuggestion: boolean = true;\n @Input() showPersonalInfo;\n @Input() minsidePetInfo: any;\n public lat: number;\n public lng: number;\n public zoom: number;\n private geoCoder;\n public Area: any;\n private user: SocialUser;\n private loggedIn: boolean;\n minDate: Date;\n maxDate: Date;\n chipFound: string = \"\";\n IsLost: boolean;\n IsChipID: Boolean;\n\n\n @ViewChild('search')\n\n private searchElementRef: ElementRef;\n\n constructor(\n private dateAdapter: DateAdapter,\n public app: AppComponent,\n private pets: PetsService,\n private formbuilder: FormBuilder,\n private mapsAPILoader: MapsAPILoader,\n private ngZone: NgZone,\n private router: ActivatedRoute,\n // private router: Router,\n private routeObj: Router,\n private authService: AuthService,\n private datePipe: DatePipe,\n private modalService: NgbModal\n ) {\n this.dateAdapter.setLocale('en-GB'); //dd/MM/yyyy\n // const currentYear = new Date().getFullYear();\n // const currentDate = new Date().getDate();\n\n // this.minDate = new Date(currentYear - 20, 0, 1);\n this.maxDate = new Date();\n\n }\n\n LostFoundPetID;\n pet;\n country: any;\n MasterSpecies: any;\n MasterBreeds: any;\n submitted = false;\n IsChipped = false;\n petImagePath = environment.apiBaseUrl + \"/Static/Images/\";\n fileData: File = null;\n croppedFileData: any = null;\n previewUrl: any = \"assets/img/user_add.png\";\n fileUploadProgress: string = null;\n uploadedFilePath: string = null;\n imageError = \"\";\n closeResult = \"\";\n\n componentForm = {\n street_number: 'short_name',\n route: 'long_name',\n locality: 'long_name',\n sublocality_level_1: 'long_name',\n sublocality_level_2: 'long_name',\n administrative_area_level_1: 'long_name',\n administrative_area_level_2: 'long_name',\n country: 'long_name',\n postal_code: 'short_name',\n postal_town: 'long_name'\n\n };\n\n imageChangedEvent: any = '';\n croppedImage: any = '';\n\n fileChangeEvent(event: any): void {\n\n }\n imageCropped(event: ImageCroppedEvent) {\n this.croppedImage = event.base64;\n }\n imageLoaded() {\n // show cropper\n }\n cropperReady() {\n // cropper ready\n }\n loadImageFailed() {\n // show message\n }\n open(content) {\n this.previewUrl = \"assets/img/user_add.png\";\n this.croppedFileData = \"\";\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', backdrop: 'static' }).result.then((result) => {\n this.closeResult = `Closed with: ${result}`;\n this.previewUrl = this.croppedImage;\n this.croppedFileData = this.croppedImage;\n //return false;\n }, (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n this.petUpdateForm.controls['Image'].patchValue(\"\");\n //return false;\n });\n return false;\n }\n private getDismissReason(reason: any): string {\n this.petUpdateForm.controls['Image'].patchValue(\"\");\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n ngOnInit() {\n this.router.queryParams.subscribe(ReqParams => {\n this.LostFoundPetID = ReqParams.PetID;\n });\n this.petUpdateForm = this.formbuilder.group({\n IsChipped: ['0'],\n ChipID: [''],\n PetName: [''],\n MasterSpeciesID: ['', Validators.required],\n MasterBreedID: ['', Validators.required],\n LostFoundDate: [new Date(), Validators.required],\n DateOfBirth: [''],\n Color: [''],\n Gender: ['1'],\n HairType: ['1'],\n Area: ['', Validators.required],\n State: ['', [Validators.required, this.noWhitespaceValidator]],\n Commune: ['', [this.noWhitespaceValidator]],\n District: ['', [this.noWhitespaceValidator]],\n City: ['', [Validators.required, this.noWhitespaceValidator]],\n Country: ['', Validators.required],\n ZipCode: ['', Validators.required],\n AdditionalInfo: [''],\n LostFoundID: [''],\n ImagePath: [''],\n Image: [''],\n croppedFileData: [''],\n lat: [''],\n lng: [''],\n OperationTypeID: ['']\n });\n\n this.showPersonalInfo = false;\n this.petUpdateForm.value.IsChipped = 0;\n\n this.pets.getCountry().subscribe(res => {\n this.country = res;\n });\n this.pets.getSpecies().subscribe(species => {\n this.MasterSpecies = species;\n\n });\n\n\n //load Places Autocomplete\n this.mapsAPILoader.load().then(() => {\n // this.setCurrentLocation();\n // this.getAddress(this.lat, this.lng);\n this.geoCoder = new google.maps.Geocoder;\n\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\n types: []\n });\n autocomplete.addListener(\"place_changed\", () => {\n this.ngZone.run(() => {\n //get the place result\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\n\n //verify result\n if (place.geometry === undefined || place.geometry === null) {\n return;\n }\n this.fillAddress(place)\n //set latitude, longitude and zoom\n this.lat = place.geometry.location.lat();\n this.lng = place.geometry.location.lng();\n this.zoom = 15;\n });\n });\n });\n // get pet details to update\n let parameters: any = {\n userId: '',\n LostFoundPetID: this.LostFoundPetID,\n type: 'current',\n OperationTypeID: '',\n lat:'',\n lng:'',\n radiousDistance:'',\n BreedID:'',\n SpeciesID:'',\n page:''\n }\n\n this.pets.GetLostFoundPetDetailsByID(parameters).subscribe(response => {\n\n this.pet = response;\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.pets.getSpecies().subscribe(species => {\n // \t\tthis.MasterSpecies = species;\n // \t\tif (this.pet.MasterSpeciesID) {\n // \t\t\tthis.petUpdateForm.controls['MasterSpeciesID'].patchValue(Number(this.pet.MasterSpeciesID))\n // \t\t\tthis.getBreeds()\n // \t\t}\n // });\n\n\n\n\n // this.petUpdateForm.controls[\"MasterSpeciesID\"].patchValue(this.pet.SpeciesID);\n // this.petUpdateForm.controls[\"MasterBreedID\"].patchValue(this.pet.BreedID);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n // this.petUpdateForm.controls[\"PetName\"].patchValue(this.pet.PetName);\n\n // let titleContent = '';\n // if(response){\n // this.lat=Number(response.lat);\n // this.lng = Number(response.lng);\n // this.zoom = 15;\n\n\n // let subtext = '';\n // if(response.OperationTypeID == 1){\n // subtext = 'Lost';\n // }else if (response.OperationTypeID == 2){\n // subtext = \"Found\";\n // }\n\n // // let HairType ='';\n // if(response.HairType == 1){\n // this.pet.HairType = 'Long Hair';\n // }else if (response.HairType == 2){\n // this.pet.HairType = \"Short Hair\";\n // }\n\n // if(response.Gender == 1){\n // this.pet.Gender = 'Male';\n // }else if (response.Gender == 2){\n // this.pet.Gender = \"Female\";\n // }\n // let color = '';\n // if(response.Color){\n // color = response.Color + \" \"; \n // }\n // let city = '';\n // if(response.City){\n // city = response.City ;\n // }\n // if(response.MasterBreed){\n // this.ShareMessage = this.ShareMessage + color + response.MasterBreed + \" (\" + response.MasterSpecies + \") \" + subtext + \" | \" + city;\n // }else{\n // this.ShareMessage = this.ShareMessage + color+ response.MasterSpecies + \" \" + subtext + \" | \" + city\n // }\n // this.ShareMessage = this.ShareMessage ? this.ShareMessage.replace(/^\\s+|\\s+$/gm, '') : '';\n // this.meta.addTags([\n // {name: 'og:title', content: this.ShareMessage},\n // {name: 'og:description', content: response.AdditionalInfo},\n // {name: 'og:image', content: this.petImagePath + response.ImagePath},\n // ]);\n\n // }else{\n // this.routeObj.navigate(['']); //in case id doesnot exist\n // }\n // this.title.setTitle(this.ShareMessage);\n\n // })\n\n // end get pet details to update\n this.minsidePetInfo = response;\n this.IsLost = (response.OperationTypeID == 1 ? true : false);\n this.IsChipID = (response.ChipID ? true : false);\n\n if (this.minsidePetInfo) {\n var genderValue = 0;\n var hairDisplayValue = 0;\n var obj = this.minsidePetInfo;\n var dob = null;\n if (obj.BirthYear && obj.BirthMonth && obj.BirthDate) {\n dob = new Date(obj.BirthYear, obj.BirthMonth, obj.BirthDate);\n }\n // this.petUpdateForm.controls['IsChipped'].patchValue('1');\n this.petUpdateForm.controls['ChipID'].patchValue(obj.ChipID);\n // Chip id bind\n if (obj.ChipID) {\n this.petUpdateForm.controls['ChipID'].disable();\n }\n // pet name bind\n this.petUpdateForm.controls['PetName'].patchValue(obj.PetName);\n if (obj.PetName && obj.OperationTypeID == 1) {\n this.petUpdateForm.controls['PetName'].disable();\n }\n // species id bind\n this.pets.getSpecies().subscribe(species => {\n this.MasterSpecies = species;\n if (this.pet.MasterSpeciesID) {\n this.petUpdateForm.controls['MasterSpeciesID'].patchValue(Number(this.pet.MasterSpeciesID))\n this.getBreeds()\n }\n });\n //this.petUpdateForm.controls['MasterSpeciesID'].patchValue(obj.MasterSpeciesID);\n if (obj.MasterSpeciesID) {\n this.petUpdateForm.controls['MasterSpeciesID'].patchValue(obj.MasterSpeciesID);\n //this.petUpdateForm.controls['MasterSpeciesID'].disable();\n\n }\n\n\n //Additional info bind\n this.petUpdateForm.controls[\"AdditionalInfo\"].patchValue(obj.AdditionalInfo);\n this.petUpdateForm.controls[\"LostFoundID\"].patchValue(this.LostFoundPetID);\n\n this.petUpdateForm.controls['DateOfBirth'].patchValue(obj.DateOfBirth);\n this.petUpdateForm.controls['LostFoundDate'].patchValue(obj.LostFoundDate);\n if (obj.LostFoundDate) {\n this.petUpdateForm.controls['LostFoundDate'].disable();\n }\n this.petUpdateForm.controls['Color'].patchValue(obj.Color);\n // if (obj.Color) {\n // this.petUpdateForm.controls['Color'].disable();\n // }\n if (obj.Area) {\n this.petUpdateForm.controls[\"Area\"].patchValue(obj.Area);\n this.petUpdateForm.controls[\"ZipCode\"].patchValue(obj.ZipCode);\n this.petUpdateForm.controls[\"City\"].patchValue(obj.City);\n this.petUpdateForm.controls[\"District\"].patchValue(obj.District);\n this.petUpdateForm.controls[\"State\"].patchValue(obj.State);\n this.petUpdateForm.controls[\"Country\"].patchValue(obj.Country);\n\n this.petUpdateForm.controls[\"Area\"].disable();\n this.petUpdateForm.controls[\"ZipCode\"].disable();\n this.petUpdateForm.controls[\"City\"].disable();\n this.petUpdateForm.controls[\"State\"].disable();\n this.petUpdateForm.controls[\"Country\"].disable();\n }\n\n if (obj.Gender) {\n genderValue = obj.Gender;\n }\n\n this.petUpdateForm.controls['Gender'].patchValue(genderValue);\n\n if (obj.HairType) {\n hairDisplayValue = obj.HairType.toString();\n }\n this.petUpdateForm.controls['HairType'].patchValue(hairDisplayValue);\n\n\n // this.pets.getBreeds(obj.MasterSpeciesID).subscribe(breeds => {\n // debugger;\n // this.MasterBreeds = breeds;\n // this.petUpdateForm.controls['MasterBreedID'].patchValue(obj.MasterBreedID);\n // let data = this.MasterBreeds.find(ob => ob.Value === obj.MasterBreedID);\n\n\n // if (data) {\n // this.petUpdateForm.controls['MasterBreedID'].disable();\n // } else {\n // if (obj.BreedName) {\n // let data1 = this.MasterBreeds.find(ob => ob.Text.toLowerCase() === obj.BreedName.toLowerCase());\n // if (data1) {\n // obj.BreedId = data1.Value; // in case id does not match patch with Name\n // this.petUpdateForm.controls['MasterBreedID'].disable();\n // }\n // }\n // }\n // this.petUpdateForm.controls['MasterBreedID'].patchValue(obj.BreedId);\n // });\n }\n })\n }\n\n get petf() {\n return this.petUpdateForm.controls;\n }\n // getChipInfo() {\n // this.petUpdateForm.controls['PetName'].patchValue(\"\");\n // this.petUpdateForm.controls['MasterSpeciesID'].patchValue(\"\");\n // this.petUpdateForm.controls['Color'].patchValue(\"\");\n // this.petUpdateForm.controls['MasterBreedID'].patchValue(\"\");\n\n // // this.pets.IsChipIDExists(this.petUpdateForm.value.ChipID, this.petUpdateForm.value.OperationTypeID).subscribe(IsChipExist =>{\n // this.pets.IsChipIDExists(this.petUpdateForm.value.ChipID, 1).subscribe(IsChipExist => {\n // if (IsChipExist == true && this.petUpdateForm.value.ChipID.trim() != \"\") {\n // this.chipFound = \"Pet with ChipID \" + this.petUpdateForm.value.ChipID + \" Already exists\";\n // this.petUpdateForm.controls['ChipID'].patchValue(\"\");\n // }\n // else {\n // this.pets.getChipInfo(this.petUpdateForm.value.ChipID).subscribe(chipInfo => {\n // if (chipInfo.ChipId) {\n // this.petUpdateForm.controls['PetName'].patchValue(chipInfo.PetName);\n // this.petUpdateForm.controls['MasterSpeciesID'].patchValue(chipInfo.SpeciesID);\n // this.petUpdateForm.controls['Color'].patchValue(chipInfo.PetColor);\n // this.pets.getBreeds(chipInfo.SpeciesID).subscribe(breeds => {\n // this.MasterBreeds = breeds;\n // this.petUpdateForm.controls['MasterBreedID'].patchValue(chipInfo.BreedID);\n // });\n // }\n // else {\n // this.chipFound = \"No data found for this chipId. Please fill details below.\"\n // }\n // });\n // }\n // });\n // }\n\n // getChipInfo() {\n\n // this.petUpdateForm.controls['PetName'].patchValue(\"\");\n // this.petUpdateForm.controls['MasterSpeciesID'].patchValue(\"\");\n // this.petUpdateForm.controls['Color'].patchValue(\"\");\n // this.petUpdateForm.controls['MasterBreedID'].patchValue(\"\");\n // this.pets.getChipInfo(this.petUpdateForm.value.ChipID).subscribe(chipInfo => {\n // if (chipInfo.ChipId) {\n // this.petUpdateForm.controls['PetName'].patchValue(chipInfo.PetName);\n // this.petUpdateForm.controls['MasterSpeciesID'].patchValue(chipInfo.SpeciesID);\n // this.petUpdateForm.controls['Color'].patchValue(chipInfo.PetColor);\n // this.pets.getBreeds(chipInfo.SpeciesID).subscribe(breeds => {\n // this.MasterBreeds = breeds;\n // this.petUpdateForm.controls['MasterBreedID'].patchValue(chipInfo.BreedID);\n // });\n // }\n // else {\n // this.chipFound = \"No data found for this chipId. Please fill details below.\"\n // }\n // });\n // }\n\n getBreeds() {\n //debugger;\n this.petUpdateForm.controls['MasterBreedID'].patchValue(\"\");\n this.pets.getBreeds(this.petUpdateForm.value.MasterSpeciesID).subscribe(breeds => {\n this.MasterBreeds = breeds;\n if (this.pet.MasterBreedID) {\n this.petUpdateForm.controls['MasterBreedID'].patchValue(Number(this.pet.MasterBreedID))\n this.petUpdateForm.controls['MasterSpeciesID'].disable();\n if (this.pet.OperationTypeID == 1) {\n this.petUpdateForm.controls['MasterBreedID'].disable();\n }\n }\n });\n }\n @Output() onPosted = new EventEmitter();\n\n onSubmit() {\n\n\n debugger;\n this.submitted = true;\n // console.log(this.petUpdateForm.value);\n if (this.petUpdateForm.invalid) {\n return;\n }\n this.pets.UpdatePetInfo(this.petUpdateForm.value).subscribe(Response => {\n alert(\"Info oppdatert suksessivt !!!\");\n });\n\n // debugger;\n // this.submitted = true;\n // if (this.imageError) {\n // this.scrollToError();\n // return;\n // }\n // if (this.petUpdateForm.invalid) {\n // this.scrollToError();\n // return;\n // }\n // this.petUpdateForm.controls['ImagePath'].patchValue(this.fileData);\n // this.petUpdateForm.controls['croppedFileData'].patchValue(this.croppedFileData);\n // this.petUpdateForm.controls['lat'].patchValue(this.lat);\n // this.petUpdateForm.controls['lng'].patchValue(this.lng);\n // // if (this.minsidePetInfo) {\n // // this.onPosted.emit(this.petUpdateForm.getRawValue())\n // // } else { \n // this.onPosted.emit(this.petUpdateForm.value)\n // // }\n // const firstElementWithError = document.querySelector('.xng-breadcrumb-root');\n // this.scrollTo(firstElementWithError);\n\n\n }\n\n private setCurrentLocation() {\n if (\"geolocation\" in navigator) {\n navigator.geolocation.getCurrentPosition((position) => {\n this.lat = position.coords.latitude;\n this.lng = position.coords.longitude;\n this.zoom = 15;\n this.getAddress(this.lat, this.lng);\n });\n }\n }\n\n // toggleFoundSuggestion() {\n // this.showFoundSuggestion = !this.showFoundSuggestion;\n // }\n\n markerDragEnd($event: any) {\n this.lat = $event.coords.lat;\n this.lng = $event.coords.lng;\n this.getAddress(this.lat, this.lng);\n }\n\n getAddress(latitude, longitude) {\n this.geoCoder.geocode({ 'location': { lat: latitude, lng: longitude } }, (results, status) => {\n if (status === 'OK') {\n if (results[0]) {\n this.fillAddress(results[0])\n } else {\n window.alert('No results found');\n }\n } else {\n window.alert('Geocoder failed due to: ' + status);\n }\n\n });\n }\n\n fillAddress(mapresult) {\n this.zoom = 15;\n let area = mapresult.formatted_address;\n //this.petUpdateForm.controls['Area'].patchValue(results[0].formatted_address)\n let place = mapresult;\n for (var i = 0; i < place.address_components.length; i++) {\n var addressType = place.address_components[i].types[0];\n if (this.componentForm[addressType]) {\n var val = place.address_components[i][this.componentForm[addressType]];\n\n if (addressType == \"administrative_area_level_1\") {\n this.petUpdateForm.controls['State'].patchValue(val)\n area = area.replace(val, \"\")\n\n // this.state = val;\n }\n if (addressType == \"administrative_area_level_2\") {\n this.petUpdateForm.controls['District'].patchValue(val)\n area = area.replace(val, \"\")\n\n // this.state = val;\n }\n if (addressType == \"country\") {\n this.petUpdateForm.controls['Country'].patchValue(val)\n area = area.replace(val, \"\")\n // this.state = val;\n }\n if (addressType == \"locality\") {\n this.petUpdateForm.controls['City'].patchValue(val)\n area = area.replace(val + \", \", \"\")\n // this.state = val;\n }\n if (addressType == \"postal_town\") {\n this.petUpdateForm.controls['City'].patchValue(val)\n area = area.replace(val + \", \", \"\")\n }\n if (addressType == \"postal_code\") {\n this.petUpdateForm.controls['ZipCode'].patchValue(val)\n area = area.replace(val + \", \", \"\")\n // this.state = val;\n }\n\n\n }\n }\n area = area.trim();\n let comma = area.substring(area.length, area.length - 1)\n if (comma == \",\") {\n area = area.substring(0, area.length - 1)\n }\n area = area.trim();\n this.petUpdateForm.controls['Area'].patchValue(area)\n }\n\n fileProgress(fileInput: any) {\n this.imageError = null;\n if (fileInput.target.files && fileInput.target.files[0]) {\n // Size Filter Bytes\n const max_size = 15000000;\n const allowed_types = ['image/png', 'image/jpeg'];\n const max_height = 15200;\n const max_width = 25600;\n\n if (fileInput.target.files[0].size > max_size) {\n this.imageError =\n 'Maximum size allowed is ' + max_size / 1000 + 'kb';\n\n return false;\n }\n if (!allowed_types.includes(fileInput.target.files[0].type)) {\n this.imageError = 'Only Images are allowed ( JPG | PNG )';\n return false;\n }\n\n let Content: HTMLElement = document.getElementById(\"contentNew\") as HTMLElement\n Content.click();\n this.imageChangedEvent = event;\n this.fileData = fileInput.target.files[0];\n // this.preview();\n }\n }\n\n preview() {\n // Show preview \n var mimeType = this.fileData.type;\n if (mimeType.match(/image\\/*/) == null) {\n return;\n }\n\n var reader = new FileReader();\n reader.readAsDataURL(this.fileData);\n reader.onload = (_event) => {\n this.previewUrl = reader.result;\n }\n }\n public noWhitespaceValidator(control: FormControl) {\n if (control.value && control.value.length > 0) {\n const isWhitespace = (control.value || '').trim().length === 0;\n const isValid = !isWhitespace;\n return isValid ? null : { 'whitespace': true };\n }\n }\n\n // public onIsChippedChange() {\n // this.petUpdateForm.controls[\"ChipID\"].clearValidators();\n // if (this.petUpdateForm.controls.IsChipped.value == 1) {\n // this.petUpdateForm.controls[\"ChipID\"].setValidators([Validators.required, this.noWhitespaceValidator]);\n // }\n // this.petUpdateForm.controls[\"ChipID\"].updateValueAndValidity()\n // }\n scrollTo(el: Element): void {\n if (el) {\n el.scrollIntoView({ behavior: 'smooth', block: 'center' });\n }\n }\n\n scrollToError(): void {\n const firstElementWithError = document.querySelector('.ng-invalid[formControlName]');\n this.scrollTo(firstElementWithError);\n }\n\n openModal(event) {\n document.getElementById(event.currentTarget.parentElement.nextElementSibling.id).style.display = \"block\";\n }\n closeModal(event) {\n document.getElementById(event.currentTarget.parentElement.id).style.display = \"none\";\n }\n\n}\n\n","
\n
\n
\n
\n

\n {{ 'Update pet Info' | translate }}\n

\n
\n
\n
\n \n \n \n
\n \n
\n \n
\n
\n
\n
{{ imageError }}
\n
\n
{{'Pet Image is required'| translate}}
\n
\n
\n\n
\n
\n \n
\n \n
\n
\n
\n \n
\n \n
\n
{{'Pet name is required' | translate}}
\n
{{'Pet name is of more then 3 char'| translate}}
\n
{{'Pet name is not more then 60 char' | translate}}
\n
{{'Space is not allowed'|\n translate}}
\n
\n
\n
\n\n
\n \n
\n \n \n
\n
{{'Species is required'| translate}}
\n
\n\n
\n
\n\n
\n \n
\n\n \n \n
\n
{{'Breed is required' | translate}}
\n
\n
\n
\n\n
\n \n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n\n
\n \n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n\n
\n \n
\n \n
\n
\n\n
\n \n
\n \n\n
\n
\n\n
\n \n
\n \n Choose a date\n \n \n \n \n
\n
\n\n
\n \n \n
\n\n \n {{ 'Choose a date' | translate }}\n \n \n \n \n
\n
{{'Date Of found is required'| translate}}
\n
\n\n
\n
\n\n\n\n\n
\n \n
\n \n \n
\n
{{'Area is required'| translate}}
\n
\n
\n
\n\n\n
\n \n
\n\n \n\n
\n
{{'Space is not allowed'| translate}}
\n
\n
\n
\n\n
\n \n
\n\n \n\n
\n
{{'City is required'| translate}}
\n
{{'Space is not allowed'|\n translate}}
\n
\n
\n
\n\n
\n \n
\n\n \n\n
\n
{{'Space is not allowed'| translate}}
\n
\n
\n
\n\n
\n \n
\n\n \n\n
\n
{{'State is required'| translate}}
\n
{{'Space is not allowed'|\n translate}}
\n
\n
\n
\n
\n \n
\n \n \n
\n
{{'Country is required'| translate}}
\n
\n
\n
\n\n
\n \n
\n \n
\n
\n\n
\n
\n \n \n {{ 'Cancel' | translate }}\n \n
\n
\n\n
\n
\n
\n
\n
\n
\n\n
\n

{{'Crop Image'| translate}}

\n \n
\n
\n
\n \n
\n
\n
{{'Preview'|translate}}
\n \n
\n
\n
\n \n
\n
","import { Component, OnInit } from '@angular/core';\nimport { StaticPagesService} from '../_services';\nimport { Router, ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'app-staticpages',\n templateUrl: './staticpages.component.html',\n styleUrls: ['./staticpages.component.scss']\n})\nexport class StaticpagesComponent implements OnInit {\n\n constructor(\n private common: StaticPagesService,\n private router:ActivatedRoute\n ) { }\n\n pageName;\n pagedata;\n aboutus;\n services;\n termsandconditions;\n privacypolicy;\n ngOnInit(): void {\n this.pageName = this.router.snapshot.routeConfig.path; \n if(this.pageName.toLocaleLowerCase().trim() == \"aboutus\") \n {\n this.aboutus=true;\n this.services=false;\n this.termsandconditions=false;\n this.privacypolicy=false;\n }\n else if(this.pageName.toLocaleLowerCase().trim()== \"services\") \n {\n this.aboutus=false;\n this.services=true;\n this.termsandconditions=false;\n this.privacypolicy=false;\n } else\n if(this.pageName.toLocaleLowerCase().trim()== \"termsandconditions\") \n {\n this.aboutus=false;\n this.services=false;\n this.termsandconditions=true;\n this.privacypolicy=false;\n } else\n if(this.pageName.toLocaleLowerCase().trim()== \"privacypolicy\") \n {\n this.aboutus=false;\n this.services=false;\n this.termsandconditions=false;\n this.privacypolicy=true;\n }\n this.GetPageStaticData(this.pageName);\n }\n\n GetPageStaticData(pageName) {\n //let DisplayName='aboutus';\n\t\t let filters = {\n \"DisplayName\":'aboutus'\n\t\t }\n\n // var data = this.common.GetPageStaticData(pageName);\n this.common.GetPageStaticData(pageName).subscribe(res =>\n {\n this.pagedata = res.data;\n });\n\t}\n\n}\n","
\n
\n\t\t
\n
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t PageContent: {{ m.PageContent }}\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t Title: {{ m.Title }}\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t TermAndCondition: {{ m.TermAndCondition }}\n\t\t\t\t\t
\n\t\t\t\t\t\t Status: {{ m.Status }}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t

{{ m.Title }}

\n\t\t\t\t\t\t

{{ m.Description }}

\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n
","import { Component, OnInit, ViewChild, ElementRef, NgZone, EventEmitter, Input, OnChanges, Output } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Router } from '@angular/router';\nimport { MapsAPILoader } from '@agm/core';\nimport { AuthService } from \"angularx-social-login\";\nimport { SocialUser } from \"angularx-social-login\";\nimport { Socialusers } from '../_models';\nimport { UserService,AuthenticationService, OwnerService } from '../_services';\nimport { AppComponent } from '../app.component';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\n\n@Component({\n selector: 'app-user-profile',\n templateUrl: './user-profile.component.html',\n})\n\nexport class UserProfileComponent implements OnInit {\n\n UserProfile: FormGroup;\n @Input() showPersonalInfo: boolean = false;\n constructor(\n public app: AppComponent,\n private formbuilder: FormBuilder,\n private router: Router,\n private mapsAPILoader: MapsAPILoader,\n private ngZone: NgZone,\n private authService: AuthService,\n private authenticationService: AuthenticationService,\n private UserService: UserService,\n private ownerService: OwnerService,\n private SpinnerService: NgxSpinnerService,\n ) { \n }\n submitted = false;\n showFoundSuggestion: boolean = true;\n public latitude: number;\n public longitude: number;\n public zoom: number;\n private geoCoder;\n private user: SocialUser;\n private loggedIn: boolean;\n private PersonalInfo:any;\n \n socialusers = new Socialusers(); \n currentUser;\n componentForm = {\n street_number: 'short_name',\n route: 'long_name',\n locality: 'long_name',\n administrative_area_level_1: 'short_name',\n country: 'long_name',\n postal_code: 'short_name',\n postal_town: 'long_name',\n District: 'long_name',\n State:'long_name',\n administrative_area_level_2: 'long_name'\n };\n\n\n @ViewChild('searchp')\n private searchElementRef: ElementRef;\n\n ngOnInit() {\n this.UserProfile = this.formbuilder.group({\n FirstName: ['',[Validators.required,this.noWhitespaceValidator]],\n LastName: [''],\n EmailID: ['', [Validators.required,this.noWhitespaceValidator]],\n Address: [''],\n ZipCode: [''],\n City: [''],\n District: [''],\n State: [''],\n Country:[''],\n ContactNumber: ['', [Validators.required,this.noWhitespaceValidator]],\n GDPRUserStatus: [],\n Provider:[],\n });\n this.currentUser = this.authenticationService.currentUserValue; \n \n if(this.currentUser){\n \n this.UserService.getUserByEmailID(this.currentUser.EmailID,this.currentUser.Provider).subscribe(res => {\n this.PersonalInfo = res.data;\n\n this.UserProfile.controls['FirstName'].patchValue(this.PersonalInfo.FirstName)\n this.UserProfile.controls['LastName'].patchValue(this.PersonalInfo.LastName)\n this.UserProfile.controls['EmailID'].patchValue(this.PersonalInfo.EmailID)\n this.UserProfile.controls['ContactNumber'].patchValue(this.PersonalInfo.ContactNumber)\n if(this.PersonalInfo.Address){\n this.UserProfile.controls['Address'].patchValue(this.PersonalInfo.Address)\n this.UserProfile.controls['ZipCode'].patchValue(this.PersonalInfo.Zipcode)\n this.UserProfile.controls['City'].patchValue(this.PersonalInfo.City)\n this.UserProfile.controls['District'].patchValue(this.PersonalInfo.District)\n this.UserProfile.controls['State'].patchValue(this.PersonalInfo.State)\n this.UserProfile.controls['Country'].patchValue(this.PersonalInfo.Country)\n }\n /*\n else{\n //Easy Connect\n this.SpinnerService.show();\n if(this.PersonalInfo.ContactNumber){\n this.ownerService.getUserDetailByPhone(this.PersonalInfo.ContactNumber).subscribe(resp => {\n \n\t\tif(resp.Data.IsSuccess){\n this.UserProfile.controls['Address'].patchValue(resp.Data.fullstreet)\n this.UserProfile.controls['ZipCode'].patchValue(resp.Data.zip)\n this.UserProfile.controls['City'].patchValue(resp.Data.city)\n this.UserProfile.controls['District'].patchValue(resp.Data.district)\n this.UserProfile.controls['State'].patchValue(resp.Data.state)\n this.UserProfile.controls['Country'].patchValue(resp.Data.country)\n }\n \n });\n }\n this.SpinnerService.hide();\n }\n */\n });\n }\n //load Places Autocomplete\n this.mapsAPILoader.load().then(() => {\n this.geoCoder = new google.maps.Geocoder;\n\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {\n types: []\n });\n autocomplete.addListener(\"place_changed\", () => {\n this.ngZone.run(() => {\n //get the place result\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\n\n //verify result\n if (place.geometry === undefined || place.geometry === null) {\n return;\n }\n // Get each component of the address from the place details,\n // and then fill-in the corresponding field on the form.\n this.UserProfile.controls['Address'].patchValue(place.formatted_address);\n\n for (var i = 0; i < place.address_components.length; i++) {\n var addressType = place.address_components[i].types[0];\n if (this.componentForm[addressType]) {\n var val = place.address_components[i][this.componentForm[addressType]];\n \n if (addressType == \"locality\") { \n this.UserProfile.controls['City'].patchValue(val)\n }\n if(addressType == \"postal_town\"){\n this.UserProfile.controls['City'].patchValue(val)\n }\n if (addressType == \"postal_code\") { \n this.UserProfile.controls['ZipCode'].patchValue(val)\n }\n if (addressType == \"administrative_area_level_1\") {\n this.UserProfile.controls['State'].patchValue(val)\n }\n if (addressType == \"administrative_area_level_2\") {\n this.UserProfile.controls['District'].patchValue(val)\n }\n if (addressType == \"country\") {\n this.UserProfile.controls['Country'].patchValue(val)\n }\n }\n }\n\n //set latitude, longitude and zoom\n this.latitude = place.geometry.location.lat();\n this.longitude = place.geometry.location.lng();\n this.zoom = 12;\n });\n });\n });\n\n\n }\n @Output() onPosted = new EventEmitter();\n @Output() onHide = new EventEmitter();\n get e() {\n return this.UserProfile.controls;\n }\n \n onSubmit() {\n debugger;\n this.submitted = true; \n // console.log(this.UserProfile.value);\n if (this.UserProfile.invalid) {\n this.scrollToError();\n return;\n } \n this.UserProfile.value.Provider = this.PersonalInfo.Provider;\n // this.onPosted.emit(this.UserProfile.value) \n this.UserService.UpdateUserInfo(this.UserProfile.value).subscribe(Response =>{\n alert(\"User Info Updated Sucessfully !!!\");\n });\n }\n getDetailByPhone(){\n let phone = this.UserProfile.controls['ContactNumber'].value;\n let address = this.UserProfile.controls['Address'].value;\n \n if(phone != '' && address == ''){\n this.SpinnerService.show();\n \n this.ownerService.getUserDetailByPhone(phone).subscribe(resp => {\n if(resp.Data.IsSuccess){\n this.UserProfile.controls['Address'].patchValue(resp.Data.fullstreet)\n this.UserProfile.controls['ZipCode'].patchValue(resp.Data.zip)\n this.UserProfile.controls['City'].patchValue(resp.Data.city)\n this.UserProfile.controls['District'].patchValue(resp.Data.district)\n this.UserProfile.controls['State'].patchValue(resp.Data.state)\n this.UserProfile.controls['Country'].patchValue(resp.Data.country)\n }\n \n });\n this.SpinnerService.hide();\n \n }\n \n }\n public noWhitespaceValidator(control: FormControl) {\n const isWhitespace = (control.value || '').trim().length === 0;\n const isValid = !isWhitespace;\n return isValid ? null : { 'whitespace': true };\n}\n\nscrollTo(el: Element): void {\n if (el) {\n el.scrollIntoView({ behavior: 'smooth', block: 'center' });\n }\n}\n\nscrollToError(): void {\n const firstElementWithError = document.querySelector('.ng-invalid[formControlName]');\n this.scrollTo(firstElementWithError);\n}\n\n}\n","
\n
\n
\n

{{'User Profile'|translate}}

\n
\n
 
\n
\n
\n
\n \n
\n \n
\n \n
\n \n
\n
{{'Name is required'|translate}}
\n
{{'Name is of more then 3 char'|translate}}
\n
{{'Name is not more then 60 char'|translate}}
\n
{{'Space is not allowed'|translate}}
\n
\n
\n
\n\n
\n \n
\n \n
\n
\n\n
\n \n
\n \n
\n
{{'Email is required'|translate}}
\n
{{'Please Enter a valid Email-ID'|translate}}
\n
{{'Space is not allowed'|translate}}
\n
\n
\n
\n \n
\n \n
\n \n
\n
{{'Phone Number is required'|translate}}
\n
{{'Phone Number is of more then 5 char'|translate}}
\n
{{'Phone Number is not more then 10 char' |translate}}
\n
{{'Space is not allowed'|translate}}
\n
\n
\n
\n\n
\n \n
\n\n \n
\n
\n \n
\n \n
\n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n \n
\n \n
\n
\n
\n \n
\n \n
\n
\n
\n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n

{{'Please Wait.'|translate}}

\n
","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n //apiUrl : \"http://localhost:51679/api\",\r\n apiUrl : \"https://apilostfound.staging.dyreid.no/api\",\r\n apiUrlM : \"https://api.dyreid.no/api/Owner/GetListCount\",\r\n DailyRegisterPetsCount :\"https://api.dyreid.no/api/Pet/GetAllPetsCount?OnlyActivePet=true\",\r\n //apiUrlM : \"https://idygoapi.dyreidentitet.no/api/Owner/GetListCount\", \r\n apiBaseUrl : \"https://apilostfound.staging.dyreid.no\",\r\n // apiBaseUrl : \"http://localhost:4200\",\r\n getCountryDropdown : \"/Common/GetCountryList\",\r\n getSpeciesDropDown : \"/Common/GetSpeciesDropDown\",\r\n getBreedsDropDown : \"/Common/GetBindSpeciesBreed\",\r\n GetPageStaticData : \"/Common/GetPageStaticData\",\r\n IsChipIDExists : \"/Common/IsChipIDExists\",\r\n //GetChipInfo : \"http://localhost:52470/api/Owner/GetChipInformation\",\r\n GetChipInfo : \"https://api.staging.dyreid.no/api/Owner/GetChipInformation\",\r\n AddUpdateLogInUser: \"/LoginAccount/AddUpdateLogInUser\",\r\n CompanyUserLogIn:\"/LoginAccount/CompanyUserLogIn\",// for company users login.\r\n GetLostFoundPetsListPartial: \"/LostFoundPetDetails/GetLostFoundPetsListPartial\",\r\n AddUpdateLostFoundPetDetails: \"/LostFoundPetDetails/AddUpdateLostFoundPetDetails\",\r\n GetLostFoundPetsListPartialFields: \"/LostFoundPetDetails/GetLostFoundPetsListPartialFields\", // this api with filters\r\n GetLostFoundPetsList: \"/Pet/GetLostFoundPetsImagesUpladedByOwners\",\r\n GetLostFoundPetsFilterList: \"/LostFoundPetDetails/GetLostFoundPetsFilterList\",\r\n GetLostFoundPetsListForHomePage: \"/LostFoundPetDetails/GetLostFoundPetsListForHomePage\",\r\n GetLostFoundPetDetailsByID: \"/LostFoundPetDetails/GetLostFoundPetDetailsByID\",\r\n UpdateUserInfo:\"/UserDetails/UpdateUserInfo\",\r\n UpdatePetInfo:\"/LostFoundPetDetails/UpdatePetInfo\",\r\n GetUserByEmailID : \"/LoginAccount/GetUserByEmailID\",\r\n GetOwnerAuthToken: \"/Owner/GetAuthToken\",\r\n GetOwnerPetList: \"/Owner/GetOwnerPetList\",\r\n //urlMinsideLogin : \"http://localhost:59605/Security/Login?ReturnUrl=%2f&lostfound=1\",\r\n urlMinsideLogin : \"https://minside.staging.dyreidentitet.no/Security/Login?ReturnUrl=%2f&lostfound=1\",\r\n //lostFoundBaseUrl : \"http://localhost:4200/\",\r\n lostFoundBaseUrl : \"https://lostfound.staging.dyreid.no/\",\r\n //apiUrlMinside : \"http://localhost:52470/api\",\r\n apiUrlMinside : \"https://api.staging.dyreid.no/api\",\r\n GetLostFoundPetsListByUser : \"/LostFoundPetDetails/GetLostFoundPetsListByUser\",\r\n MarkPetasReunited : \"/LostFoundPetDetails/MarkPetasReunited\",\r\n GetPetSuggestionbyLostFoundId : \"/LostFoundPetDetails/GetReportedPetSuggestion\",\r\n RemoveReportedPet : \"/LostFoundPetDetails/RemoveReportedPet\",\r\n GetOwnerDetailEasyConnectAPI: 'https://api.dyreid.no/api/Owner/GetDetailByPhoneNumber',\r\n // GetReportedPetsCount :'/LostFoundPetDetails/GetReportedPetsCount',\r\n // GetReportedPetsCountMap :'/LostFoundPetDetails/GetReportedPetsCountMap',\r\n //GetProxyApi:'https://cors-anywhere.herokuapp.com/',\r\n GetLostFoundPetsListCountByUser :'/LostFoundPetDetails/GetLostFoundPetsListCountByUser',\r\n GetPetsForLandingPage:'/LostFoundPetDetails/GetPetsForLandingPage',\r\n GetLandingPageLostPets : '/LostFoundPetDetails/GetLandingPageLostPets',\r\n GetLandingPageFoundPets : '/LostFoundPetDetails/GetLandingPageFoundPets',\r\n GetLostPetsForLandingPage:'/LostFoundPetDetails/GetLostFoundPetsForLandingPage?OperationTypeID=1',\r\n GetFoundPetsForLandingPage:'/LostFoundPetDetails/GetLostFoundPetsForLandingPage?OperationTypeID=2',\r\n GetAllPetsForLandingPage:'/LostFoundPetDetails/GetLostFoundPetsForLandingPage?OperationTypeID=3',\r\n placeholderImg : 'https://socialistmodernism.com/wp-content/uploads/2017/07/placeholder-image.png'\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import 'hammerjs';\nimport { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"],"sourceRoot":"webpack:///"}