Explorar el Código

fix autodetection/selection for network fields

pull/1/head
Jonathan Cobb hace 4 años
padre
commit
4dda97352e
Se han modificado 3 ficheros con 23 adiciones y 5 borrados
  1. +2
    -1
      src/_store/system.module.js
  2. +1
    -1
      src/account/HomePage.vue
  3. +20
    -3
      src/account/NewNetworkPage.vue

+ 2
- 1
src/_store/system.module.js Ver fichero

@@ -42,7 +42,7 @@ const actions = {
detectTimezone({ commit }) {
commit('detectTimezoneRequest');
systemService.detectTimezone().then(
timezones => commit('detectTimezoneSuccess', timezones),
timezone => commit('detectTimezoneSuccess', timezone),
error => commit('detectTimezoneFailure', error)
)
},
@@ -122,6 +122,7 @@ const mutations = {
},
detectTimezoneRequest(state) {},
detectTimezoneSuccess(state, detectedTimezone) {
console.log('detectTimezoneSuccess: detectedTimezone='+JSON.stringify(detectedTimezone));
state.detectedTimezone = detectedTimezone;
},
detectTimezoneFailure(state, error) {


+ 1
- 1
src/account/HomePage.vue Ver fichero

@@ -15,7 +15,7 @@ export default {
account: state => state.account,
users: state => state.users.all
}),
...mapState('system', ['messages'])
...mapState('system', ['messages', 'detectedTimezone', 'detectedLocale'])
},
methods: {
...mapActions('users', {


+ 20
- 3
src/account/NewNetworkPage.vue Ver fichero

@@ -15,7 +15,7 @@
</div>
<div class="form-group">
<label htmlFor="timezone">{{messages.field_label_timezone}}</label>
<v-select :options="timezoneObjects" :reduce="tz => tz.timezoneId" label="timezoneDescription" :value="detectedTimezone ? detectedTimezone.timeZoneId : null" type="text" v-model="network.timezone" name="timezone" class="form-control" :class="{ 'is-invalid': submitted && errors.has('timezone') }"></v-select>
<v-select :options="timezoneObjects" :reduce="tz => tz.timezoneId" label="timezoneDescription" type="text" v-model="network.timezone" name="timezone" class="form-control" :class="{ 'is-invalid': submitted && errors.has('timezone') }"></v-select>
<div v-if="submitted && errors.has('timezone')" class="invalid-feedback">{{ errors.first('timezone') }}</div>
</div>
<div class="form-group">
@@ -74,7 +74,7 @@
network: {
name: '',
domain: '',
locale: 'en_US',
locale: '',
timezone: '',
plan: 'bubble',
footprint: 'Worldwide',
@@ -89,7 +89,7 @@
};
},
computed: {
...mapState('system', ['messages', 'locales', 'timezones', 'detectedTimezone']),
...mapState('system', ['messages', 'locales', 'timezones', 'detectedTimezone', 'detectedLocale']),
...mapState('domains', ['domains']),
...mapState('plans', ['plans']),
...mapState('footprints', ['footprints']),
@@ -171,6 +171,23 @@
});
}
},
watch: {
domains (doms) {
if (doms && doms[0]) {
if (this.network.domain == null || this.network.domain === '') this.network.domain = doms[0].name;
}
},
detectedTimezone (tz) {
if (tz && tz.timeZoneId) {
if (this.network.timezone == null || this.network.timezone === '') this.network.timezone = tz.timeZoneId;
}
},
detectedLocale (loc) {
if (loc) {
if (this.network.locale == null || this.network.locale === '') this.network.locale = loc;
}
}
},
created() {
this.loadDomains(currentUser().uuid, this.messages, this.errors);
this.loadPlans(this.messages, this.errors);


Cargando…
Cancelar
Guardar