mirror of
https://github.com/jwetzell/itsfiveoclockwhere.git
synced 2026-07-26 10:28:45 +00:00
cleanup
This commit is contained in:
@@ -1,14 +0,0 @@
|
|||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { RouterModule, Routes } from '@angular/router';
|
|
||||||
import { FiveoclockComponent } from './fiveoclock/fiveoclock.component';
|
|
||||||
import { TimezoneListComponent } from './timezone/components/timezone-list/timezone-list.component';
|
|
||||||
|
|
||||||
const routes: Routes = [
|
|
||||||
{ path: '', component: FiveoclockComponent },
|
|
||||||
];
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [RouterModule.forRoot(routes)],
|
|
||||||
exports: [RouterModule]
|
|
||||||
})
|
|
||||||
export class AppRoutingModule { }
|
|
||||||
@@ -1 +1,7 @@
|
|||||||
<router-outlet></router-outlet>
|
<app-timezone-list
|
||||||
|
*ngIf="fiveOclocks"
|
||||||
|
[timezones]="fiveOclocks"
|
||||||
|
[closest]="fiveOclock"
|
||||||
|
[showAll]="showAll"
|
||||||
|
(click)="toggleView()">
|
||||||
|
</app-timezone-list>
|
||||||
|
|||||||
@@ -1,5 +1,9 @@
|
|||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { NavigationEnd, Router } from '@angular/router';
|
import { NavigationEnd, Router } from '@angular/router';
|
||||||
|
import { interval, startWith } from 'rxjs';
|
||||||
|
import { GoogleAnalyticsService } from './services/google-analytics.service';
|
||||||
|
import { Timezone, GetClosestTimezoneFrom } from './timezone/models/timezone.model';
|
||||||
|
import { TimezoneService } from './timezone/services/timezone.service';
|
||||||
|
|
||||||
declare let gtag: Function;
|
declare let gtag: Function;
|
||||||
@Component({
|
@Component({
|
||||||
@@ -9,13 +13,53 @@ declare let gtag: Function;
|
|||||||
})
|
})
|
||||||
export class AppComponent {
|
export class AppComponent {
|
||||||
|
|
||||||
constructor(public router: Router) {
|
fiveOclocks: Timezone[] = [];
|
||||||
this.router.events.subscribe(event => {
|
fiveOclock: Timezone | undefined;
|
||||||
if (event instanceof NavigationEnd) {
|
|
||||||
gtag('config', 'G-48B6CKS0V6',{
|
showAll: boolean = false;
|
||||||
'page_path': event.urlAfterRedirects
|
|
||||||
});
|
timezones: string[] =[]
|
||||||
}
|
|
||||||
|
constructor(
|
||||||
|
private timezoneService: TimezoneService,
|
||||||
|
private googleAnalyticsService: GoogleAnalyticsService,
|
||||||
|
private router:Router
|
||||||
|
){
|
||||||
|
this.router.events.subscribe(event => {
|
||||||
|
if (event instanceof NavigationEnd) {
|
||||||
|
gtag('config', 'G-48B6CKS0V6',{
|
||||||
|
'page_path': event.urlAfterRedirects
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.timezones = this.timezoneService.getTimezones()
|
||||||
|
var second = interval(1000).pipe(startWith(0))
|
||||||
|
|
||||||
|
second.subscribe(()=>{
|
||||||
|
this.fiveOclocks = [];
|
||||||
|
this.timezoneService.getCurrentTimeInTimezones(this.timezones).forEach((timezoneObj)=>{
|
||||||
|
if(timezoneObj.time?.hour === 17){
|
||||||
|
this.fiveOclocks.push(timezoneObj);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.fiveOclock = GetClosestTimezoneFrom(this.timezoneService.getCurrentTimezone(), this.fiveOclocks)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit(): void { }
|
||||||
|
|
||||||
|
toggleView(){
|
||||||
|
if(this.showAll){
|
||||||
|
this.googleAnalyticsService.emitEvent('select_content', {
|
||||||
|
'event_label' : 'timezone_closest',
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
this.googleAnalyticsService.emitEvent('select_content', {
|
||||||
|
'event_label' : 'timezone_list',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.showAll = !this.showAll
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,20 +4,16 @@ import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|||||||
|
|
||||||
import { AppComponent } from './app.component';
|
import { AppComponent } from './app.component';
|
||||||
import { TimezoneService } from './timezone/services/timezone.service';
|
import { TimezoneService } from './timezone/services/timezone.service';
|
||||||
import { AppRoutingModule } from './app-routing.module';
|
|
||||||
import { TimezoneListComponent } from './timezone/components/timezone-list/timezone-list.component';
|
import { TimezoneListComponent } from './timezone/components/timezone-list/timezone-list.component';
|
||||||
import { FiveoclockComponent } from './fiveoclock/fiveoclock.component';
|
|
||||||
import { GoogleAnalyticsService } from './services/google-analytics.service';
|
import { GoogleAnalyticsService } from './services/google-analytics.service';
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [
|
declarations: [
|
||||||
AppComponent,
|
AppComponent,
|
||||||
TimezoneListComponent,
|
TimezoneListComponent,
|
||||||
FiveoclockComponent
|
|
||||||
],
|
],
|
||||||
imports: [
|
imports: [
|
||||||
BrowserModule,
|
BrowserModule,
|
||||||
BrowserAnimationsModule,
|
BrowserAnimationsModule,
|
||||||
AppRoutingModule
|
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
TimezoneService,
|
TimezoneService,
|
||||||
|
|||||||
@@ -1,7 +0,0 @@
|
|||||||
<app-timezone-list
|
|
||||||
*ngIf="fiveOclocks"
|
|
||||||
[timezones]="fiveOclocks"
|
|
||||||
[closest]="fiveOclock"
|
|
||||||
[showAll]="showAll"
|
|
||||||
(click)="toggleView()">
|
|
||||||
</app-timezone-list>
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|
||||||
|
|
||||||
import { FiveoclockComponent } from './fiveoclock.component';
|
|
||||||
|
|
||||||
describe('FiveoclockComponent', () => {
|
|
||||||
let component: FiveoclockComponent;
|
|
||||||
let fixture: ComponentFixture<FiveoclockComponent>;
|
|
||||||
|
|
||||||
beforeEach(async () => {
|
|
||||||
await TestBed.configureTestingModule({
|
|
||||||
declarations: [ FiveoclockComponent ]
|
|
||||||
})
|
|
||||||
.compileComponents();
|
|
||||||
});
|
|
||||||
|
|
||||||
beforeEach(() => {
|
|
||||||
fixture = TestBed.createComponent(FiveoclockComponent);
|
|
||||||
component = fixture.componentInstance;
|
|
||||||
fixture.detectChanges();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should create', () => {
|
|
||||||
expect(component).toBeTruthy();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
|
||||||
import { interval, startWith } from 'rxjs';
|
|
||||||
import { GoogleAnalyticsService } from '../services/google-analytics.service';
|
|
||||||
import { GetClosestTimezoneFrom, Timezone, TimezoneCompare, TimezoneList } from '../timezone/models/timezone.model';
|
|
||||||
import { TimezoneService } from '../timezone/services/timezone.service';
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
selector: 'app-fiveoclock',
|
|
||||||
templateUrl: './fiveoclock.component.html',
|
|
||||||
styleUrls: ['./fiveoclock.component.scss']
|
|
||||||
})
|
|
||||||
export class FiveoclockComponent implements OnInit {
|
|
||||||
|
|
||||||
fiveOclocks: Timezone[] = [];
|
|
||||||
fiveOclock: Timezone | undefined;
|
|
||||||
|
|
||||||
showAll: boolean = false;
|
|
||||||
|
|
||||||
timezones: string[] =[]
|
|
||||||
|
|
||||||
constructor(
|
|
||||||
private timezoneService: TimezoneService,
|
|
||||||
private googleAnalyticsService: GoogleAnalyticsService
|
|
||||||
){
|
|
||||||
this.timezones = this.timezoneService.getTimezones()
|
|
||||||
var second = interval(1000).pipe(startWith(0))
|
|
||||||
|
|
||||||
second.subscribe(()=>{
|
|
||||||
this.fiveOclocks = [];
|
|
||||||
this.timezoneService.getCurrentTimeInTimezones(this.timezones).forEach((timezoneObj)=>{
|
|
||||||
if(timezoneObj.time?.hour === 17){
|
|
||||||
this.fiveOclocks.push(timezoneObj);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.fiveOclock = GetClosestTimezoneFrom(this.timezoneService.getCurrentTimezone(), this.fiveOclocks)
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
ngOnInit(): void { }
|
|
||||||
|
|
||||||
toggleView(){
|
|
||||||
if(this.showAll){
|
|
||||||
this.googleAnalyticsService.emitEvent('select_content', {
|
|
||||||
'event_label' : 'timezone_closest',
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
this.googleAnalyticsService.emitEvent('select_content', {
|
|
||||||
'event_label' : 'timezone_list',
|
|
||||||
})
|
|
||||||
}
|
|
||||||
this.showAll = !this.showAll
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
<title>itsfiveoclockwhere</title>
|
<title>itsfiveoclockwhere</title>
|
||||||
<base href="/">
|
<base href="/">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<!-- <link rel="icon" type="image/x-icon" href="favicon.ico">ng serv -->
|
<link rel="icon" type="image/x-icon" href="favicon.ico">ng serv
|
||||||
<!-- Global site tag (gtag.js) - Google Analytics -->
|
<!-- Global site tag (gtag.js) - Google Analytics -->
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-48B6CKS0V6"></script>
|
<script async src="https://www.googletagmanager.com/gtag/js?id=G-48B6CKS0V6"></script>
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
Reference in New Issue
Block a user