added bridge instance settings
This commit is contained in:
parent
fb4c99870e
commit
7653398642
|
@ -35,6 +35,7 @@
|
|||
</form>
|
||||
<a href class="form-button sound__play" type="submit" (click)="playNotificationSound()">play</a>
|
||||
</div>
|
||||
|
||||
<h4 class="panel__subtitle">Shortcuts</h4>
|
||||
<div class="sub-section">
|
||||
<span class="sub-section__title">switch column:</span><br />
|
||||
|
@ -50,6 +51,21 @@
|
|||
<br>
|
||||
</div>
|
||||
|
||||
<h4 class="panel__subtitle">Twitter Bridge</h4>
|
||||
<div class="sub-section">
|
||||
<input class="sub-section__checkbox" [(ngModel)]="twitterBridgeEnabled"
|
||||
(change)="onTwitterBridgeEnabledChanged()" type="checkbox" name="onTwitterBridgeEnabled"
|
||||
value="onTwitterBridgeEnabled" id="onTwitterBridgeEnabled">
|
||||
<label class="noselect sub-section__label" for="onTwitterBridgeEnabled">enable bridge</label>
|
||||
<br>
|
||||
<div *ngIf="twitterBridgeEnabled">
|
||||
<p>Please provide your bridge instance:
|
||||
<input type="text" class="form-control form-control-sm sub_section__text-input"
|
||||
[(ngModel)]="setTwitterBridgeInstance" placeholder="bridge.tld" />
|
||||
If you don't know any, consider using <a href="https://github.com/NicolasConstant/BirdsiteLive" target="_blank" class="version__link">BirdsiteLIVE</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h4 class="panel__subtitle">Content-Warning Policies</h4>
|
||||
<div class="sub-section">
|
||||
<span class="sub-section__title">global behavior:</span><br />
|
||||
|
|
|
@ -31,6 +31,8 @@ export class SettingsComponent implements OnInit {
|
|||
hasPleromaAccount: boolean;
|
||||
autoFollowOnListEnabled: boolean;
|
||||
|
||||
twitterBridgeEnabled: boolean;
|
||||
|
||||
columnShortcutEnabled: ColumnShortcut = ColumnShortcut.Ctrl;
|
||||
timeLineHeader: TimeLineHeaderEnum = TimeLineHeaderEnum.Title_DomainName;
|
||||
timeLineMode: TimeLineModeEnum = TimeLineModeEnum.OnTop;
|
||||
|
@ -63,6 +65,16 @@ export class SettingsComponent implements OnInit {
|
|||
return this.contentHidedCompletely;
|
||||
}
|
||||
|
||||
private twitterBridgeInstance: string;
|
||||
set setTwitterBridgeInstance(value: string) {
|
||||
let instance = value.replace('https://', '').replace('http://', '').replace('/', '').trim();
|
||||
this.setBridgeInstance(instance);
|
||||
this.twitterBridgeInstance = instance;
|
||||
}
|
||||
get setTwitterBridgeInstance(): string {
|
||||
return this.twitterBridgeInstance;
|
||||
}
|
||||
|
||||
constructor(
|
||||
private readonly navigationService: NavigationService,
|
||||
private formBuilder: FormBuilder,
|
||||
|
@ -112,6 +124,9 @@ export class SettingsComponent implements OnInit {
|
|||
})
|
||||
.catch(err => console.error(err));
|
||||
});
|
||||
|
||||
this.twitterBridgeEnabled = settings.twitterBridgeEnabled;
|
||||
this.twitterBridgeInstance = settings.twitterBridgeInstance;
|
||||
}
|
||||
|
||||
onShortcutChange(id: ColumnShortcut) {
|
||||
|
@ -184,6 +199,12 @@ export class SettingsComponent implements OnInit {
|
|||
return data.split(';').map(x => x.trim().toLowerCase()).filter((value, index, self) => self.indexOf(value) === index).filter(y => y !== '');
|
||||
}
|
||||
|
||||
private setBridgeInstance(instance: string){
|
||||
let settings = this.toolsService.getSettings();
|
||||
settings.twitterBridgeInstance = instance;
|
||||
this.toolsService.saveSettings(settings);
|
||||
}
|
||||
|
||||
// reload(): boolean {
|
||||
// window.location.reload();
|
||||
// return false;
|
||||
|
@ -240,6 +261,12 @@ export class SettingsComponent implements OnInit {
|
|||
this.toolsService.saveSettings(settings);
|
||||
}
|
||||
|
||||
onTwitterBridgeEnabledChanged(){
|
||||
let settings = this.toolsService.getSettings();
|
||||
settings.twitterBridgeEnabled = this.twitterBridgeEnabled;
|
||||
this.toolsService.saveSettings(settings);
|
||||
}
|
||||
|
||||
isCleanningAll: boolean = false;
|
||||
startClearAllLocalData(): boolean {
|
||||
this.isCleanningAll = !this.isCleanningAll;
|
||||
|
|
|
@ -67,8 +67,10 @@ export class GlobalSettings {
|
|||
disableSounds = false;
|
||||
disableRemoteStatusFetching = false;
|
||||
autoFollowOnListEnabled = false;
|
||||
twitterBridgeEnabled = false;
|
||||
|
||||
notificationSoundFileId: string = '0';
|
||||
twitterBridgeInstance: string = '';
|
||||
|
||||
timelineHeader: TimeLineHeaderEnum = TimeLineHeaderEnum.Title_DomainName;
|
||||
timelineMode: TimeLineModeEnum = TimeLineModeEnum.OnTop;
|
||||
|
@ -166,6 +168,8 @@ export class SettingsState {
|
|||
newSettings.timelineHeader = oldSettings.timelineHeader;
|
||||
newSettings.timelineMode = oldSettings.timelineMode;
|
||||
newSettings.autoFollowOnListEnabled = oldSettings.autoFollowOnListEnabled;
|
||||
newSettings.twitterBridgeEnabled = oldSettings.twitterBridgeEnabled;
|
||||
newSettings.twitterBridgeInstance = oldSettings.twitterBridgeInstance;
|
||||
|
||||
return newSettings;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue