load videoprefix on login
This commit is contained in:
42
lib/api/settings_api.dart
Normal file
42
lib/api/settings_api.dart
Normal file
@ -0,0 +1,42 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'api.dart';
|
||||
|
||||
class InitialData {
|
||||
bool darkMode;
|
||||
bool password;
|
||||
String mediacenterName;
|
||||
String videoPath;
|
||||
String tvShowPath;
|
||||
bool tvShowEnabled;
|
||||
bool fullDeleteEnabled;
|
||||
|
||||
InitialData(
|
||||
this.darkMode,
|
||||
this.password,
|
||||
this.mediacenterName,
|
||||
this.videoPath,
|
||||
this.tvShowPath,
|
||||
this.tvShowEnabled,
|
||||
this.fullDeleteEnabled);
|
||||
|
||||
factory InitialData.fromJson(dynamic json) {
|
||||
return InitialData(
|
||||
json['DarkMode'] as bool,
|
||||
json['Pasword'] as bool,
|
||||
json['MediacenterName'] as String,
|
||||
json['VideoPath'] as String,
|
||||
json['TVShowPath'] as String,
|
||||
json['TVShowEnabled'] as bool,
|
||||
json['FullDeleteEnabled'] as bool,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Future<InitialData> loadInitialData() async {
|
||||
final data = await API.query("settings", "loadInitialData", {});
|
||||
|
||||
final d = jsonDecode(data);
|
||||
final video = InitialData.fromJson(d);
|
||||
return video;
|
||||
}
|
@ -8,8 +8,9 @@ import '../log/log.dart';
|
||||
class TokenT {
|
||||
String token;
|
||||
String domain;
|
||||
String videoPath;
|
||||
|
||||
TokenT(this.token, this.domain);
|
||||
TokenT(this.token, this.domain, this.videoPath);
|
||||
}
|
||||
|
||||
class Token {
|
||||
@ -18,40 +19,41 @@ class Token {
|
||||
|
||||
String _tokenval = "";
|
||||
String _domain = "";
|
||||
String _vPath = "";
|
||||
|
||||
static Token getInstance() {
|
||||
return _token;
|
||||
}
|
||||
|
||||
Future<TokenT?> getToken() async {
|
||||
var completer = Completer<TokenT?>();
|
||||
|
||||
if (_tokenval == "" || _domain == "") {
|
||||
if (_tokenval == "" || _domain == "" || _vPath == "") {
|
||||
Log.d("reading token store");
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
final token = await _storage.read(key: 'jwt');
|
||||
final domain = await _storage.read(key: 'domain');
|
||||
final vPath = await _storage.read(key: 'videoPath');
|
||||
|
||||
// check if value is defined in phone store
|
||||
if (token != null && domain != null) {
|
||||
if (token != null && domain != null && vPath != null) {
|
||||
_tokenval = token;
|
||||
_domain = domain;
|
||||
completer.complete(TokenT(token, domain));
|
||||
return TokenT(token, domain, vPath);
|
||||
} else {
|
||||
Log.d("no token defined");
|
||||
completer.complete(null);
|
||||
return null;
|
||||
}
|
||||
} else {
|
||||
completer.complete(TokenT(_tokenval, _domain));
|
||||
return TokenT(_tokenval, _domain, _vPath);
|
||||
}
|
||||
return completer.future;
|
||||
}
|
||||
|
||||
void setToken(String token, String domain) {
|
||||
void setToken(String token, String domain, String videoPath) {
|
||||
_tokenval = token;
|
||||
_domain = domain;
|
||||
_vPath = videoPath;
|
||||
_storage.write(key: 'jwt', value: token);
|
||||
_storage.write(key: 'domain', value: domain);
|
||||
_storage.write(key: 'videoPath', value: videoPath);
|
||||
}
|
||||
|
||||
Token._();
|
||||
|
Reference in New Issue
Block a user