X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Fservices%2FSharedService.ts;h=f2f730e060e1dd67ebd9ac81f057b4ed524083bf;hb=refs%2Fchanges%2F02%2F9402%2F2;hp=8aee5138217fd364e33b055954ec4d09c985022d;hpb=d477b85279831f43f77d10acfc1912da1fbe6007;p=osm%2FNG-UI.git diff --git a/src/services/SharedService.ts b/src/services/SharedService.ts index 8aee513..f2f730e 100644 --- a/src/services/SharedService.ts +++ b/src/services/SharedService.ts @@ -22,6 +22,7 @@ import { HttpErrorResponse, HttpHeaders } from '@angular/common/http'; import { EventEmitter, Injectable, Output } from '@angular/core'; import { FormArray, FormGroup } from '@angular/forms'; import { Router } from '@angular/router'; +import { TranslateService } from '@ngx-translate/core'; import { CONSTANTNUMBER, ERRORDATA, GETAPIURLHEADER, PACKAGEINFO, PAGERSMARTTABLE, SMARTTABLECLASS, TARSETTINGS } from 'CommonModel'; import { environment } from 'environment'; import * as HttpStatus from 'http-status-codes'; @@ -64,6 +65,12 @@ export class SharedService { // tslint:disable-next-line: max-line-length public REGX_PASSWORD_PATTERN: RegExp = new RegExp(/^.*(?=.{8,})((?=.*[!@#$%^&*()\-_=+{};:,<.>]){1})(?=.*\d)((?=.*[a-z]){1})((?=.*[A-Z]){1}).*$/); + /** Variables to hold maxlength for the description @public */ + public MAX_LENGTH_DESCRIPTION: number = 500; + + /** Variables to hold maxlength for the name @public */ + public MAX_LENGTH_NAME: number = 50; + /** FormGroup instance added to the form @ html @public */ public formGroup: FormGroup; @@ -94,24 +101,31 @@ export class SharedService { /** Check for the root directory @private */ private directoryCount: number = 2; - constructor(restService: RestService, router: Router) { + /** Contains tranlsate instance @private */ + private translateService: TranslateService; + + constructor(restService: RestService, router: Router, translateService: TranslateService) { this.restService = restService; this.router = router; + this.translateService = translateService; } /** convert epoch time function @public */ public convertEpochTime(unixtimestamp: number): string { - const monthsArr: string[] = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', - 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; - const date: Date = new Date(unixtimestamp * this.epochTime1000); - const year: number = date.getFullYear(); - const month: string = monthsArr[date.getMonth()]; - const day: number = date.getDate(); - const hours: number = date.getHours(); - const minutes: string = '0' + date.getMinutes(); - const seconds: string = '0' + date.getSeconds(); - return month + '-' + day + '-' + year + ' ' + hours + ':' + minutes.substr(this.epochTimeMinus2) + ':' - + seconds.substr(this.epochTimeMinus2); + if (!isNullOrUndefined(unixtimestamp)) { + const monthsArr: string[] = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', + 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; + const date: Date = new Date(unixtimestamp * this.epochTime1000); + const year: number = date.getFullYear(); + const month: string = monthsArr[date.getMonth()]; + const day: number = date.getDate(); + const hours: number = date.getHours(); + const minutes: string = '0' + date.getMinutes(); + const seconds: string = '0' + date.getSeconds(); + return month + '-' + day + '-' + year + ' ' + hours + ':' + minutes.substr(this.epochTimeMinus2) + ':' + + seconds.substr(this.epochTimeMinus2); + } + return this.translateService.instant('NODATE'); } /** Download Files function @public */ @@ -290,6 +304,11 @@ export class SharedService { return tag; } + /** Fetch file extension @public */ + public fetchFileExtension(fileInfo: FileList): string { + return fileInfo[0].name.substring(fileInfo[0].name.lastIndexOf('.') + 1); + } + /** Method to validate file extension and size @private */ private vaildataFileInfo(fileInfo: File, fileType: string): boolean { const extension: string = fileInfo.name.substring(fileInfo.name.lastIndexOf('.') + 1);