Ver a proveniência

admin menu

pull/1/head
Jonathan Cobb há 5 anos
ascendente
cometimento
551dd9a718
2 ficheiros alterados com 83 adições e 31 eliminações
  1. +81
    -25
      src/_store/system.module.js
  2. +2
    -6
      src/account/ProfilePage.vue

+ 81
- 25
src/_store/system.module.js Ver ficheiro

@@ -1,4 +1,5 @@
import { systemService } from '../_services';
import {account} from "./account.module";

const state = {
configs: {
@@ -67,32 +68,87 @@ const mutations = {
loadMessagesSuccess(state, {group, messages}) {
// console.log('loadMessages (group='+group+'), messages='+JSON.stringify(messages));
state.messages = Object.assign({}, state.messages, messages);
state.menu = [{
href: '/',
title: messages.label_menu_dashboard,
icon: messages.label_menu_dashboard_icon
}, {
href: '/profile',
title: messages.label_menu_account,
icon: messages.label_menu_account_icon,
child: [{
href: '/profile/policy',
title: messages.label_menu_account_policy,
icon: messages.label_menu_account_policy_icon
if (account.state.user.admin === true) {
state.menu = [{
href: '/',
title: messages.label_menu_dashboard,
icon: messages.label_menu_dashboard_icon
}, {
href: '/profile/contacts',
title: messages.label_menu_account_contacts,
icon: messages.label_menu_account_contacts_icon
}]
}, {
href: '/me/networks',
title: messages.label_menu_networks,
icon: messages.label_menu_networks_icon
}, {
href: '/logout',
title: messages.label_menu_logout,
icon: messages.label_menu_logout_icon
}];
href: '/admin',
title: messages.label_menu_admin,
icon: messages.label_menu_admin_icon,
child: [{
href: '/admin/users',
title: messages.label_menu_admin_users,
icon: messages.label_menu_admin_users_icon
}, {
href: '/admin/networks',
title: messages.label_menu_admin_networks,
icon: messages.label_menu_admin_networks_icon
}, {
href: '/admin/bills',
title: messages.label_menu_admin_bills,
icon: messages.label_menu_admin_bills_icon
}]
}, {
href: '/profile',
title: messages.label_menu_account,
icon: messages.label_menu_account_icon,
child: [{
href: '/profile/policy',
title: messages.label_menu_account_policy,
icon: messages.label_menu_account_policy_icon
}, {
href: '/profile/contacts',
title: messages.label_menu_account_contacts,
icon: messages.label_menu_account_contacts_icon
}, {
href: '/me/bills',
title: messages.label_menu_bills,
icon: messages.label_menu_bills_icon
}]
}, {
href: '/me/networks',
title: messages.label_menu_networks,
icon: messages.label_menu_networks_icon
}, {
href: '/logout',
title: messages.label_menu_logout,
icon: messages.label_menu_logout_icon
}];

} else {
state.menu = [{
href: '/',
title: messages.label_menu_dashboard,
icon: messages.label_menu_dashboard_icon
}, {
href: '/profile',
title: messages.label_menu_account,
icon: messages.label_menu_account_icon,
child: [{
href: '/profile/policy',
title: messages.label_menu_account_policy,
icon: messages.label_menu_account_policy_icon
}, {
href: '/profile/contacts',
title: messages.label_menu_account_contacts,
icon: messages.label_menu_account_contacts_icon
}]
}, {
href: '/me/networks',
title: messages.label_menu_networks,
icon: messages.label_menu_networks_icon
}, {
href: '/me/bills',
title: messages.label_menu_bills,
icon: messages.label_menu_bills_icon
}, {
href: '/logout',
title: messages.label_menu_logout,
icon: messages.label_menu_logout_icon
}];
}
if (messages.country_codes) {
const countries = [];
const codes = messages.country_codes.split(',');


+ 2
- 6
src/account/ProfilePage.vue Ver ficheiro

@@ -3,9 +3,7 @@
<h2>Edit Profile</h2>
<form @submit.prevent="handleSubmit">
<div class="form-group">
<label for="name">{{messages.field_label_username}}</label>
<input type="text" v-model="user.name" v-validate="'required'" name="name" class="form-control" :class="{ 'is-invalid': submitted && errors.has('name') }" />
<div v-if="submitted && errors.has('name')" class="invalid-feedback">{{ errors.first('name') }}</div>
<span>{{messages.field_label_username}}: {{user.name}}</span>
</div>
<div class="form-group">
<label htmlFor="url">{{messages.field_label_url}}</label>
@@ -13,7 +11,7 @@
<div v-if="submitted && errors.has('url')" class="invalid-feedback">{{ errors.first('url') }}</div>
</div>
<div class="form-group">
<label htmlFor="description">{{messages.field_label_bio}}</label>
<label htmlFor="description">{{messages.field_label_description}}</label>
<input type="text" v-model="user.description" name="description" class="form-control"/>
<div v-if="submitted && errors.has('description')" class="invalid-feedback">{{ errors.first('description') }}</div>
</div>
@@ -95,8 +93,6 @@
...mapActions('users', ['update', 'loadUser']),
handleSubmit (e) {
const updatedProfile = {
uuid: this.user.uuid,
name: this.user.name,
url: this.user.url,
description: this.user.description,
admin: this.user.admin,


Carregando…
Cancelar
Guardar