Nowe filtry statusów scenerii; aktualizacja scenerii

This commit is contained in:
2021-11-13 01:52:25 +01:00
parent 922c372c74
commit 1a2dd60c82
7 changed files with 89 additions and 9 deletions
+4
View File
@@ -168,6 +168,10 @@ export default defineComponent({
StorageManager.setStringValue("lang", lang); StorageManager.setStringValue("lang", lang);
}, },
updateToNewest() {
// to do
},
loadLang() { loadLang() {
const storageLang = StorageManager.getStringValue("lang"); const storageLang = StorageManager.getStringValue("lang");
+45 -1
View File
@@ -31,6 +31,14 @@
"value": true, "value": true,
"defaultValue": true "defaultValue": true
}, },
{
"id": "unavailable",
"name": "unavailable",
"iconName": "user",
"section": "access",
"value": false,
"defaultValue": false
},
{ {
"id": "SPK", "id": "SPK",
@@ -130,7 +138,43 @@
"section": "status", "section": "status",
"value": true, "value": true,
"defaultValue": true "defaultValue": true
} },
{
"id": "endingStatus",
"name": "ending-status",
"iconName": "",
"section": "status",
"value": true,
"defaultValue": true
},
{
"id": "afkStatus",
"name": "afk-status",
"iconName": "",
"section": "status",
"value": true,
"defaultValue": true
},
{
"id": "noSpaceStatus",
"name": "no-space-status",
"iconName": "",
"section": "status",
"value": true,
"defaultValue": true
},
{
"id": "unavailableStatus",
"name": "unavailable-status",
"iconName": "",
"section": "status",
"value": true,
"defaultValue": true
}
], ],
"sliders": [{ "sliders": [{
"id": "min-lvl", "id": "min-lvl",
File diff suppressed because one or more lines are too long
+7
View File
@@ -50,11 +50,18 @@
"donate": "DONATE" "donate": "DONATE"
}, },
"filters": { "filters": {
"endingStatus": "ENDS SOON",
"afkStatus": "AFK",
"noSpaceStatus":"NO SPACE",
"unavailableStatus": "UNAVAILABLE",
"title": "STATION FILTER", "title": "STATION FILTER",
"default": "DEFAULT", "default": "DEFAULT",
"not-default": "OTHER", "not-default": "OTHER",
"real": "REAL", "real": "REAL",
"fictional": "FICTIONAL", "fictional": "FICTIONAL",
"unavailable": "UNSUPPORTED",
"SPK": "SPK", "SPK": "SPK",
"SCS": "SCS", "SCS": "SCS",
"SPE": "SPE", "SPE": "SPE",
+6
View File
@@ -50,11 +50,17 @@
"donate": "WESPRZYJ" "donate": "WESPRZYJ"
}, },
"filters": { "filters": {
"endingStatus": "KOŃCZY",
"afkStatus": "Z/W",
"noSpaceStatus":"BRAK MIEJSCA",
"unavailableStatus": "NIEDOSTĘPNY",
"title": "FILTRUJ STACJE", "title": "FILTRUJ STACJE",
"default": "DOMYŚLNA", "default": "DOMYŚLNA",
"not-default": "POZA PACZKĄ", "not-default": "POZA PACZKĄ",
"real": "REALNA", "real": "REALNA",
"fictional": "FIKCYJNA", "fictional": "FIKCYJNA",
"unavailable": "NIEDOSTĘPNA",
"SPK": "SPK", "SPK": "SPK",
"SCS": "SCS", "SCS": "SCS",
"SPE": "SPE", "SPE": "SPE",
+7 -1
View File
@@ -25,6 +25,12 @@ export default interface Filter {
'include-selected': boolean; 'include-selected': boolean;
free: boolean; free: boolean;
occupied: boolean; occupied: boolean;
ending: boolean;
nonPublic: boolean; nonPublic: boolean;
unavailable: boolean;
endingStatus: boolean;
afkStatus: boolean;
noSpaceStatus: boolean;
unavailableStatus: boolean;
unsignedStatus: boolean;
} }
+15 -2
View File
@@ -60,8 +60,14 @@ const filterStations = (station: Station, filters: Filter) => {
if (station.online && station.statusID == 'ending' && filters['ending']) return returnMode; if (station.online && station.statusID == 'ending' && filters['ending']) return returnMode;
if (station.statusID == 'ending' && filters['endingStatus']) return returnMode;
if (station.statusID == 'not-signed' && filters['unavailableStatus']) return returnMode;
if (station.statusID == 'brb' && filters['afkStatus']) return returnMode;
if (station.statusID == 'no-space' && filters['noSpaceStatus']) return returnMode;
if (station.online && filters['occupied']) return returnMode; if (station.online && filters['occupied']) return returnMode;
if (!station.online && filters['free']) return returnMode; if (!station.online && filters['free']) return returnMode;
if (station.unavailable && filters['unavailable']) return returnMode;
if (station.default && filters['default']) return returnMode; if (station.default && filters['default']) return returnMode;
if (!station.default && filters['notDefault']) return returnMode; if (!station.default && filters['notDefault']) return returnMode;
@@ -97,6 +103,7 @@ const filterStations = (station: Station, filters: Filter) => {
if (filters['SBL'] && station.SBL) return returnMode; if (filters['SBL'] && station.SBL) return returnMode;
return true; return true;
} }
@@ -128,7 +135,13 @@ export default class StationFilterManager {
free: true, free: true,
occupied: false, occupied: false,
ending: false, ending: false,
nonPublic: false nonPublic: false,
unavailable: true,
afkStatus: false,
endingStatus: false,
noSpaceStatus: false,
unavailableStatus: false,
unsignedStatus: false
}; };
private filters: Filter = { ...this.filterInitStates }; private filters: Filter = { ...this.filterInitStates };
@@ -151,7 +164,7 @@ export default class StationFilterManager {
invertFilters() { invertFilters() {
Object.keys(this.filters).forEach(prop => { Object.keys(this.filters).forEach(prop => {
if(typeof this.filters[prop] !== "boolean") return; if (typeof this.filters[prop] !== "boolean") return;
this.filters[prop] = !this.filters[prop]; this.filters[prop] = !this.filters[prop];