mirror of
https://github.com/Spythere/stacjownik.git
synced 2026-05-03 13:28:11 +00:00
wyświetlanie RJ dla scenerii offline
This commit is contained in:
@@ -100,7 +100,7 @@ export default defineComponent({
|
||||
},
|
||||
|
||||
onlineDispatchersCount() {
|
||||
return this.store.onlineSceneryList.filter(
|
||||
return this.store.activeSceneryList.filter(
|
||||
(scenery) => scenery.region == this.store.region.id
|
||||
).length;
|
||||
},
|
||||
|
||||
@@ -85,7 +85,7 @@ export default defineComponent({
|
||||
|
||||
regionList() {
|
||||
return regionsJSON.map((region) => {
|
||||
const regionStationCount = this.store.onlineSceneryList.filter(
|
||||
const regionStationCount = this.store.activeSceneryList.filter(
|
||||
(scenery) => scenery.region == region.id
|
||||
).length;
|
||||
|
||||
|
||||
@@ -61,6 +61,9 @@ export default defineComponent({
|
||||
case Status.ActiveDispatcher.UNKNOWN:
|
||||
return 'unknown';
|
||||
|
||||
case Status.ActiveDispatcher.FREE:
|
||||
return 'free';
|
||||
|
||||
default:
|
||||
if (this.dispatcherTimestamp != null && this.dispatcherStatus >= Date.now() + 25500000)
|
||||
return 'no-limit';
|
||||
|
||||
@@ -76,7 +76,7 @@ import Station from '../../scripts/interfaces/Station';
|
||||
import Loading from '../Global/Loading.vue';
|
||||
import styleMixin from '../../mixins/styleMixin';
|
||||
import listObserverMixin from '../../mixins/listObserverMixin';
|
||||
import { OnlineScenery } from '../../store/typings';
|
||||
import { ActiveScenery } from '../../store/typings';
|
||||
import { API } from '../../typings/api';
|
||||
import { Status } from '../../typings/common';
|
||||
import http from '../../http';
|
||||
@@ -90,7 +90,7 @@ export default defineComponent({
|
||||
type: Object as PropType<Station>
|
||||
},
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>
|
||||
type: Object as PropType<ActiveScenery>
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<script lang="ts">
|
||||
import { PropType, defineComponent } from 'vue';
|
||||
import Station from '../../scripts/interfaces/Station';
|
||||
import { OnlineScenery } from '../../store/typings';
|
||||
import { ActiveScenery } from '../../store/typings';
|
||||
|
||||
export default defineComponent({
|
||||
props: {
|
||||
@@ -29,7 +29,7 @@ export default defineComponent({
|
||||
},
|
||||
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>
|
||||
type: Object as PropType<ActiveScenery>
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -90,7 +90,7 @@ import SceneryInfoUserList from './SceneryInfo/SceneryInfoUserList.vue';
|
||||
import SceneryInfoSpawnList from './SceneryInfo/SceneryInfoSpawnList.vue';
|
||||
import SceneryInfoRoutes from './SceneryInfo/SceneryInfoRoutes.vue';
|
||||
import Station from '../../scripts/interfaces/Station';
|
||||
import { OnlineScenery } from '../../store/typings';
|
||||
import { ActiveScenery } from '../../store/typings';
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
@@ -106,7 +106,7 @@ export default defineComponent({
|
||||
},
|
||||
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>
|
||||
type: Object as PropType<ActiveScenery>
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<section class="info-dispatcher">
|
||||
<div class="dispatcher" v-if="onlineScenery">
|
||||
<div class="dispatcher" v-if="onlineScenery && onlineScenery.dispatcherExp != -1">
|
||||
<span
|
||||
class="dispatcher_level"
|
||||
:style="calculateExpStyle(onlineScenery.dispatcherExp, onlineScenery.dispatcherIsSupporter)"
|
||||
@@ -42,14 +42,14 @@ import dateMixin from '../../../mixins/dateMixin';
|
||||
import routerMixin from '../../../mixins/routerMixin';
|
||||
import styleMixin from '../../../mixins/styleMixin';
|
||||
import StationStatusBadge from '../../Global/StationStatusBadge.vue';
|
||||
import { OnlineScenery } from '../../../store/typings';
|
||||
import { ActiveScenery } from '../../../store/typings';
|
||||
import donatorMixin from '../../../mixins/donatorMixin';
|
||||
|
||||
export default defineComponent({
|
||||
mixins: [styleMixin, dateMixin, routerMixin, donatorMixin],
|
||||
props: {
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>,
|
||||
type: Object as PropType<ActiveScenery>,
|
||||
required: false
|
||||
}
|
||||
},
|
||||
|
||||
@@ -30,12 +30,12 @@
|
||||
|
||||
<script lang="ts">
|
||||
import { PropType, defineComponent } from 'vue';
|
||||
import { OnlineScenery } from '../../../store/typings';
|
||||
import { ActiveScenery } from '../../../store/typings';
|
||||
|
||||
export default defineComponent({
|
||||
props: {
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>,
|
||||
type: Object as PropType<ActiveScenery>,
|
||||
required: false
|
||||
}
|
||||
},
|
||||
|
||||
@@ -32,14 +32,14 @@
|
||||
import { PropType, defineComponent } from 'vue';
|
||||
import modalTrainMixin from '../../../mixins/modalTrainMixin';
|
||||
import routerMixin from '../../../mixins/routerMixin';
|
||||
import { OnlineScenery } from '../../../store/typings';
|
||||
import { ActiveScenery } from '../../../store/typings';
|
||||
|
||||
export default defineComponent({
|
||||
mixins: [routerMixin, modalTrainMixin],
|
||||
|
||||
props: {
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>,
|
||||
type: Object as PropType<ActiveScenery>,
|
||||
required: false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
<span>{{ $t('scenery.timetables') }}</span>
|
||||
|
||||
<span>
|
||||
<span class="text--primary">{{ onlineScenery?.scheduledTrainCount.all || 0 }}</span>
|
||||
<span class="text--primary">{{ onlineScenery?.scheduledTrainCount.all ?? 0 }}</span>
|
||||
<span> / </span>
|
||||
<span class="text--grayed">
|
||||
{{ onlineScenery?.scheduledTrainCount.confirmed || '0' }}
|
||||
{{ onlineScenery?.scheduledTrainCount.confirmed ?? 0 }}
|
||||
</span>
|
||||
</span>
|
||||
|
||||
@@ -190,7 +190,7 @@ import Station from '../../scripts/interfaces/Station';
|
||||
import { useMainStore } from '../../store/mainStore';
|
||||
import modalTrainMixin from '../../mixins/modalTrainMixin';
|
||||
import ScheduledTrainStatus from './ScheduledTrainStatus.vue';
|
||||
import { OnlineScenery } from '../../store/typings';
|
||||
import { ActiveScenery } from '../../store/typings';
|
||||
import { useApiStore } from '../../store/apiStore';
|
||||
|
||||
export default defineComponent({
|
||||
@@ -205,7 +205,7 @@ export default defineComponent({
|
||||
type: Object as PropType<Station>
|
||||
},
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>
|
||||
type: Object as PropType<ActiveScenery>
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ import dateMixin from '../../mixins/dateMixin';
|
||||
import Station from '../../scripts/interfaces/Station';
|
||||
import Loading from '../Global/Loading.vue';
|
||||
import listObserverMixin from '../../mixins/listObserverMixin';
|
||||
import { OnlineScenery } from '../../store/typings';
|
||||
import { ActiveScenery } from '../../store/typings';
|
||||
import { API } from '../../typings/api';
|
||||
import { Status } from '../../typings/common';
|
||||
import http from '../../http';
|
||||
@@ -87,7 +87,7 @@ export default defineComponent({
|
||||
type: Object as PropType<Station>
|
||||
},
|
||||
onlineScenery: {
|
||||
type: Object as PropType<OnlineScenery>
|
||||
type: Object as PropType<ActiveScenery>
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
|
||||
<td class="station_dispatcher-exp">
|
||||
<span
|
||||
v-if="station.onlineInfo"
|
||||
v-if="station.onlineInfo && station.onlineInfo?.dispatcherExp != -1"
|
||||
:style="
|
||||
calculateExpStyle(
|
||||
station.onlineInfo.dispatcherExp,
|
||||
|
||||
@@ -181,7 +181,7 @@ export default defineComponent({
|
||||
isSBL: /sbl/gi.test(stop.stopName),
|
||||
position: stop.beginsHere ? 'begin' : stop.terminatesHere ? 'end' : 'en-route',
|
||||
sceneryHash: '',
|
||||
sceneryName: this.timetableSceneryNames[currentSceneryIndex],
|
||||
sceneryName: this.train.timetableData!.sceneryNames[currentSceneryIndex],
|
||||
status: stop.confirmed ? 'confirmed' : stop.stopped ? 'stopped' : 'unconfirmed'
|
||||
};
|
||||
}) ?? []
|
||||
@@ -216,19 +216,6 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
return activeMinorStopList;
|
||||
},
|
||||
|
||||
timetableSceneryNames() {
|
||||
if (!this.train.timetableData?.sceneries) return [];
|
||||
|
||||
return this.train.timetableData?.sceneries
|
||||
.map(
|
||||
(sceneryHash) =>
|
||||
this.store.onlineSceneryList.find((st) => st.hash === sceneryHash)?.name ??
|
||||
this.apiStore.sceneryData.find((sd) => sd.hash === sceneryHash)?.name ??
|
||||
sceneryHash
|
||||
)
|
||||
.reverse();
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user