commit
d1ed12f0e0
|
@ -36,7 +36,7 @@ import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
|
||||||
export class OptionBtnComponent implements ControlValueAccessor {
|
export class OptionBtnComponent implements ControlValueAccessor {
|
||||||
@Input() config: OptionButtonsConfig;
|
@Input() config: OptionButtonsConfig;
|
||||||
@Input() disabled = false;
|
@Input() disabled = false;
|
||||||
@ViewChild(MatButtonToggleGroup) options: MatButtonToggleGroup;
|
@ViewChild(MatButtonToggleGroup, { static: true }) private options: MatButtonToggleGroup;
|
||||||
public onChange;
|
public onChange;
|
||||||
public onTouched;
|
public onTouched;
|
||||||
|
|
||||||
|
|
|
@ -20,10 +20,10 @@
|
||||||
>
|
>
|
||||||
</ng-waveform>
|
</ng-waveform>
|
||||||
<div fxFlexFill fxLayoutGap="8px" fxLayoutAlign="center">
|
<div fxFlexFill fxLayoutGap="8px" fxLayoutAlign="center">
|
||||||
<button mat-flat-button (click)="onPlayButtonClick()">
|
<button mat-flat-button (click)="onPlayButtonClick()" [disabled]="playbackButtonsDisabled">
|
||||||
<fa-icon [icon]="playIcon"></fa-icon>
|
<fa-icon [icon]="playIcon"></fa-icon>
|
||||||
</button>
|
</button>
|
||||||
<button mat-flat-button (click)="onPauseButtonClick()">
|
<button mat-flat-button (click)="onPauseButtonClick()" [disabled]="playbackButtonsDisabled">
|
||||||
<fa-icon [icon]="pauseIcon"></fa-icon>
|
<fa-icon [icon]="pauseIcon"></fa-icon>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
mat-flat-button
|
mat-flat-button
|
||||||
color="primary"
|
color="primary"
|
||||||
*ngFor="let tagValue of tagEvent.tagValues"
|
*ngFor="let tagValue of tagEvent.tagValues"
|
||||||
[disabled]="buttonsDisabled"
|
[disabled]="tagButtonsDisabled"
|
||||||
(click)="saveTagResult(tagValue.id)"
|
(click)="saveTagResult(tagValue.id)"
|
||||||
>
|
>
|
||||||
{{tagValue.display}}
|
{{tagValue.display}}
|
||||||
|
|
|
@ -30,7 +30,8 @@ import { animate, state, style, transition, trigger } from '@angular/animations'
|
||||||
export class TagComponent implements OnInit {
|
export class TagComponent implements OnInit {
|
||||||
@ViewChild('waveform', { static: false }) waveform: NgWaveformComponent;
|
@ViewChild('waveform', { static: false }) waveform: NgWaveformComponent;
|
||||||
public audioUrl: string;
|
public audioUrl: string;
|
||||||
public buttonsDisabled: boolean;
|
public tagButtonsDisabled: boolean;
|
||||||
|
public playbackButtonsDisabled: boolean;
|
||||||
public isTagged = false;
|
public isTagged = false;
|
||||||
public playIcon = faPlay;
|
public playIcon = faPlay;
|
||||||
public pauseIcon = faPause;
|
public pauseIcon = faPause;
|
||||||
|
@ -41,11 +42,13 @@ export class TagComponent implements OnInit {
|
||||||
constructor(private route: ActivatedRoute, private taggerService: TaggerService) { }
|
constructor(private route: ActivatedRoute, private taggerService: TaggerService) { }
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.buttonsDisabled = true;
|
this.tagButtonsDisabled = true;
|
||||||
|
this.playbackButtonsDisabled = true;
|
||||||
this.route.data.subscribe(
|
this.route.data.subscribe(
|
||||||
(data: {tagEvent: TagEvent}) => {
|
(data: {tagEvent: TagEvent}) => {
|
||||||
this.tagEvent = data.tagEvent;
|
this.tagEvent = data.tagEvent;
|
||||||
this.audioUrl = this.preciseUrl + '/api/audio/' + this.tagEvent.audioFileName;
|
this.audioUrl = this.preciseUrl + '/api/audio/' + this.tagEvent.audioFileName;
|
||||||
|
this.playbackButtonsDisabled = false;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
this.route.paramMap.subscribe(
|
this.route.paramMap.subscribe(
|
||||||
|
@ -54,7 +57,7 @@ export class TagComponent implements OnInit {
|
||||||
}
|
}
|
||||||
|
|
||||||
onPlayButtonClick(): void {
|
onPlayButtonClick(): void {
|
||||||
this.buttonsDisabled = false;
|
this.tagButtonsDisabled = false;
|
||||||
this.waveform.play();
|
this.waveform.play();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -69,7 +72,9 @@ export class TagComponent implements OnInit {
|
||||||
tagId: this.tagEvent.tagId,
|
tagId: this.tagEvent.tagId,
|
||||||
tagValueId: tagValueId
|
tagValueId: tagValueId
|
||||||
};
|
};
|
||||||
this.buttonsDisabled = true;
|
this.waveform.pause();
|
||||||
|
this.tagButtonsDisabled = true;
|
||||||
|
this.playbackButtonsDisabled = true;
|
||||||
this.taggerService.addTagEvent(fileTag).subscribe(
|
this.taggerService.addTagEvent(fileTag).subscribe(
|
||||||
() => { this.isTagged = true; }
|
() => { this.isTagged = true; }
|
||||||
);
|
);
|
||||||
|
@ -87,13 +92,14 @@ export class TagComponent implements OnInit {
|
||||||
this.isTagged = false;
|
this.isTagged = false;
|
||||||
this.tagEvent = tagEvent;
|
this.tagEvent = tagEvent;
|
||||||
this.audioUrl = this.preciseUrl + '/api/audio/' + this.tagEvent.audioFileName;
|
this.audioUrl = this.preciseUrl + '/api/audio/' + this.tagEvent.audioFileName;
|
||||||
|
this.playbackButtonsDisabled = false;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
skipToNextEvent(): void {
|
skipToNextEvent(): void {
|
||||||
this.waveform.pause();
|
this.waveform.pause();
|
||||||
this.buttonsDisabled = true;
|
this.tagButtonsDisabled = true;
|
||||||
this.isTagged = true;
|
this.isTagged = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,11 +75,11 @@ import { environment } from '../../environments/environment';
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
id: GoogleLoginProvider.PROVIDER_ID,
|
id: GoogleLoginProvider.PROVIDER_ID,
|
||||||
provider: new GoogleLoginProvider(environment.facebookClientId),
|
provider: new GoogleLoginProvider(environment.googleClientId),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: FacebookLoginProvider.PROVIDER_ID,
|
id: FacebookLoginProvider.PROVIDER_ID,
|
||||||
provider: new FacebookLoginProvider(environment.googleClientId),
|
provider: new FacebookLoginProvider(environment.facebookClientId),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
} as SocialAuthServiceConfig,
|
} as SocialAuthServiceConfig,
|
||||||
|
|
Loading…
Reference in New Issue