diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml index 44b188d9d..44f63716e 100644 --- a/src/i18n/locale/en.yml +++ b/src/i18n/locale/en.yml @@ -1178,6 +1178,7 @@ item: available: Available warehouseText: 'Calculated on the warehouse of { warehouseName }' itemDiary: Item diary + producer: Producer list: id: Identifier grouping: Grouping diff --git a/src/i18n/locale/es.yml b/src/i18n/locale/es.yml index 5b9b54a22..6829b92ea 100644 --- a/src/i18n/locale/es.yml +++ b/src/i18n/locale/es.yml @@ -1167,6 +1167,7 @@ item: available: Disponible warehouseText: 'Calculado sobre el almacén de { warehouseName }' itemDiary: Registro de compra-venta + producer: Productor list: id: Identificador grouping: Grouping diff --git a/src/pages/Account/AccountAccounts.vue b/src/pages/Account/AccountAccounts.vue new file mode 100644 index 000000000..3d7dda899 --- /dev/null +++ b/src/pages/Account/AccountAccounts.vue @@ -0,0 +1,104 @@ + + + + + +es: + Roles synchronized!: ¡Roles sincronizados! + Synchronizing in the background: Sincronizando en segundo plano + diff --git a/src/pages/Account/AccountAcls.vue b/src/pages/Account/AccountAcls.vue index 82d171ce7..bd7f0f9ae 100644 --- a/src/pages/Account/AccountAcls.vue +++ b/src/pages/Account/AccountAcls.vue @@ -8,12 +8,12 @@ import VnSearchbar from 'components/ui/VnSearchbar.vue'; import CardList from 'src/components/ui/CardList.vue'; import VnLv from 'src/components/ui/VnLv.vue'; import AclFilter from './Acls/AclFilter.vue'; +import AclFormView from './Acls/AclFormView.vue'; import { useVnConfirm } from 'composables/useVnConfirm'; import { useStateStore } from 'stores/useStateStore'; import axios from 'axios'; import useNotify from 'src/composables/useNotify.js'; -import AclFormView from './Acls/AclFormView.vue'; defineProps({ id: { diff --git a/src/pages/Account/AccountLdap.vue b/src/pages/Account/AccountLdap.vue new file mode 100644 index 000000000..77c4d89f8 --- /dev/null +++ b/src/pages/Account/AccountLdap.vue @@ -0,0 +1,171 @@ + + + + + +es: + LDAP connection established!: ¡Conexión con LDAP establecida! + diff --git a/src/pages/Account/AccountSamba.vue b/src/pages/Account/AccountSamba.vue new file mode 100644 index 000000000..25428a674 --- /dev/null +++ b/src/pages/Account/AccountSamba.vue @@ -0,0 +1,187 @@ + + + + + +es: + Samba connection established!: ¡Conexión con LDAP establecida! + diff --git a/src/pages/Account/Alias/Card/AliasBasicData.vue b/src/pages/Account/Alias/Card/AliasBasicData.vue index 035ba0e8b..ba940cda5 100644 --- a/src/pages/Account/Alias/Card/AliasBasicData.vue +++ b/src/pages/Account/Alias/Card/AliasBasicData.vue @@ -1,11 +1,9 @@ diff --git a/src/pages/Account/locale/en.yml b/src/pages/Account/locale/en.yml index bbc1da69e..dca9b45d9 100644 --- a/src/pages/Account/locale/en.yml +++ b/src/pages/Account/locale/en.yml @@ -67,6 +67,7 @@ ldap: groupDN: Group DN testConnection: Test connection success: LDAP connection established! + password: Password samba: enableSync: Enable synchronization domainController: Domain controller @@ -78,6 +79,16 @@ samba: verifyCertificate: Verify certificate testConnection: Test connection success: Samba connection established! +accounts: + homedir: Homedir base + shell: Shell + idBase: User and role base id + min: Min + max: Max + warn: Warn + inact: Inact + syncAll: Synchronize all + syncRoles: Synchronize roles connections: refresh: Refresh username: Username diff --git a/src/pages/Account/locale/es.yml b/src/pages/Account/locale/es.yml index 97bcd1d00..896cc8ea9 100644 --- a/src/pages/Account/locale/es.yml +++ b/src/pages/Account/locale/es.yml @@ -70,6 +70,7 @@ mailAlias: name: Nombre isPublic: Público ldap: + password: Contraseña enableSync: Habilitar sincronización server: Servidor rdn: RDN @@ -86,9 +87,19 @@ samba: userAD: Usuario AD passwordAD: Contraseña AD domainPart: DN usuarios (sin la parte del dominio) - Verify certificate: Verificar certificado + verifyCertificate: Verificar certificado testConnection: Probar conexión success: ¡Conexión con Samba establecida! +accounts: + homedir: Directorio base para carpetas de usuario + shell: Intérprete de línea de comandos + idBase: Id base usuarios y roles + min: Min + max: Max + warn: Warn + inact: Inact + syncAll: Sincronizar todo + syncRoles: Sincronizar roles connections: refresh: Actualizar username: Nombre de usuario diff --git a/src/pages/Item/Card/ItemDescriptor.vue b/src/pages/Item/Card/ItemDescriptor.vue index 305d29b8b..155c9eb4c 100644 --- a/src/pages/Item/Card/ItemDescriptor.vue +++ b/src/pages/Item/Card/ItemDescriptor.vue @@ -16,6 +16,7 @@ import useCardDescription from 'src/composables/useCardDescription'; import { useSession } from 'src/composables/useSession'; import { getUrl } from 'src/composables/getUrl'; import axios from 'axios'; +import { dashIfEmpty } from 'src/filters'; const $props = defineProps({ id: { @@ -182,6 +183,10 @@ const openCloneDialog = async () => { + { style="margin-left: 1px" /> - + import('src/pages/Account/AccountList.vue'), }, + { + path: 'role-list', + name: 'AccountRoles', + meta: { + title: 'roles', + icon: 'group', + }, + component: () => import('src/pages/Account/Role/AccountRoles.vue'), + }, { path: 'alias-list', name: 'AccountAliasList', @@ -54,6 +66,36 @@ export default { }, component: () => import('src/pages/Account/AccountConnections.vue'), }, + { + path: 'accounts', + name: 'AccountAccounts', + meta: { + title: 'accounts', + icon: 'accessibility', + roles: ['itManagement'], + }, + component: () => import('src/pages/Account/AccountAccounts.vue'), + }, + { + path: 'ldap', + name: 'AccountLdap', + meta: { + title: 'ldap', + icon: 'account_tree', + roles: ['itManagement'], + }, + component: () => import('src/pages/Account/AccountLdap.vue'), + }, + { + path: 'samba', + name: 'AccountSamba', + meta: { + title: 'samba', + icon: 'preview', + roles: ['itManagement'], + }, + component: () => import('src/pages/Account/AccountSamba.vue'), + }, { path: 'acls', name: 'AccountAcls', @@ -68,15 +110,6 @@ export default { name: 'AccountAclForm', component: () => import('src/pages/Account/Acls/AclFormView.vue'), }, - { - path: 'role-list', - name: 'AccountRoles', - meta: { - title: 'roles', - icon: 'group', - }, - component: () => import('src/pages/Account/Role/AccountRoles.vue'), - }, ], }, ],