You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ro...@apache.org on 2020/06/05 04:56:22 UTC

[cloudstack-primate] branch master updated: config: fix labels to use locale keys (#371)

This is an automated email from the ASF dual-hosted git repository.

rohit pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cloudstack-primate.git


The following commit(s) were added to refs/heads/master by this push:
     new d6947d1  config: fix labels to use locale keys (#371)
d6947d1 is described below

commit d6947d102199ecb6120f7e6802c6188684978d03
Author: davidjumani <dj...@gmail.com>
AuthorDate: Fri Jun 5 10:26:15 2020 +0530

    config: fix labels to use locale keys (#371)
---
 src/config/section/account.js           | 14 +++----
 src/config/section/compute.js           | 29 +++++++-------
 src/config/section/domain.js            |  4 +-
 src/config/section/event.js             |  4 +-
 src/config/section/image.js             | 16 ++++----
 src/config/section/infra.js             |  4 +-
 src/config/section/infra/clusters.js    |  4 +-
 src/config/section/infra/hosts.js       |  6 +--
 src/config/section/infra/nsp.js         |  4 +-
 src/config/section/infra/phynetworks.js |  8 ++--
 src/config/section/infra/zones.js       |  6 +--
 src/config/section/network.js           | 68 ++++++++++++++++-----------------
 src/config/section/offering.js          | 50 ++++++++++++------------
 src/config/section/project.js           | 12 +++---
 src/config/section/role.js              |  4 +-
 src/config/section/storage.js           | 44 ++++++++++-----------
 16 files changed, 139 insertions(+), 138 deletions(-)

diff --git a/src/config/section/account.js b/src/config/section/account.js
index 6dded7d..74b3fda 100644
--- a/src/config/section/account.js
+++ b/src/config/section/account.js
@@ -69,7 +69,7 @@ export default {
     {
       api: 'updateAccount',
       icon: 'edit',
-      label: 'Update Account',
+      label: 'label.action.edit.account',
       dataView: true,
       args: ['newname', 'account', 'domainid', 'networkdomain'],
       mapping: {
@@ -84,7 +84,7 @@ export default {
     {
       api: 'updateResourceCount',
       icon: 'sync',
-      label: 'Update Resource Count',
+      label: 'label.action.update.resource.count',
       dataView: true,
       args: ['account', 'domainid'],
       mapping: {
@@ -99,7 +99,7 @@ export default {
     {
       api: 'enableAccount',
       icon: 'play-circle',
-      label: 'Enable Account',
+      label: 'label.action.enable.account',
       dataView: true,
       show: (record) => { return record.state === 'disabled' || record.state === 'locked' },
       params: { lock: 'false' }
@@ -107,7 +107,7 @@ export default {
     {
       api: 'disableAccount',
       icon: 'pause-circle',
-      label: 'Disable Account',
+      label: 'label.action.disable.account',
       dataView: true,
       show: (record) => { return record.state === 'enabled' },
       args: ['lock'],
@@ -120,7 +120,7 @@ export default {
     {
       api: 'disableAccount',
       icon: 'lock',
-      label: 'Lock account',
+      label: 'label.action.lock.account',
       dataView: true,
       show: (record) => { return record.state === 'enabled' },
       args: ['lock'],
@@ -133,7 +133,7 @@ export default {
     {
       api: 'uploadSslCert',
       icon: 'safety-certificate',
-      label: 'Add certificate',
+      label: 'label.add.certificate',
       dataView: true,
       args: ['name', 'certificate', 'privatekey', 'certchain', 'password', 'account', 'domainid'],
       show: (record) => { return record.state === 'enabled' },
@@ -149,7 +149,7 @@ export default {
     {
       api: 'deleteAccount',
       icon: 'delete',
-      label: 'Delete account',
+      label: 'label.action.delete.account',
       dataView: true,
       hidden: (record) => { return record.name === 'admin' }
     }
diff --git a/src/config/section/compute.js b/src/config/section/compute.js
index f02e5af..6257f0c 100644
--- a/src/config/section/compute.js
+++ b/src/config/section/compute.js
@@ -74,7 +74,7 @@ export default {
         {
           api: 'updateVirtualMachine',
           icon: 'edit',
-          label: 'Update VM',
+          label: 'label.action.edit.instance',
           dataView: true,
           args: ['name', 'displayname', 'ostypeid', 'isdynamicallyscalable', 'haenable', 'group'],
           show: (record) => { return ['Stopped'].includes(record.state) }
@@ -82,7 +82,7 @@ export default {
         {
           api: 'startVirtualMachine',
           icon: 'caret-right',
-          label: 'Start VM',
+          label: 'label.action.start.instance',
           docHelp: 'adminguide/virtual_machines.html#stopping-and-starting-vms',
           dataView: true,
           groupAction: true,
@@ -125,7 +125,7 @@ export default {
         {
           api: 'createVMSnapshot',
           icon: 'camera',
-          label: 'Create VM Snapshot',
+          label: 'label.action.vmsnapshot.create',
           dataView: true,
           args: ['virtualmachineid', 'name', 'description', 'snapshotmemory', 'quiescevm'],
           show: (record) => {
@@ -141,7 +141,7 @@ export default {
         {
           api: 'assignVirtualMachineToBackupOffering',
           icon: 'folder-add',
-          label: 'Assign VM to Backup Offering',
+          label: 'label.backup.offering.assign',
           dataView: true,
           args: ['virtualmachineid', 'backupofferingid'],
           show: (record) => { return !record.backupofferingid },
@@ -154,7 +154,7 @@ export default {
         {
           api: 'createBackup',
           icon: 'cloud-upload',
-          label: 'Create Backup',
+          label: 'label.create.backup',
           dataView: true,
           args: ['virtualmachineid'],
           show: (record) => { return record.backupofferingid },
@@ -184,7 +184,7 @@ export default {
         {
           api: 'removeVirtualMachineFromBackupOffering',
           icon: 'scissor',
-          label: 'Remove VM from Backup Offering',
+          label: 'label.backup.offering.remove',
           dataView: true,
           args: ['virtualmachineid', 'forced'],
           show: (record) => { return record.backupofferingid },
@@ -234,6 +234,7 @@ export default {
         {
           api: 'scaleVirtualMachine',
           icon: 'arrows-alt',
+          // label: label.change.service.offering
           label: 'Scale VM',
           dataView: true,
           args: ['serviceofferingid', 'details'],
@@ -242,7 +243,7 @@ export default {
         {
           api: 'changeServiceForVirtualMachine',
           icon: 'sliders',
-          label: 'Change Service Offering',
+          label: 'label.change.service.offering',
           dataView: true,
           args: ['serviceofferingid'],
           show: (record) => { return ['Stopped'].includes(record.state) || (['Running'].includes(record.state) && record.hypervisor !== 'KVM' && record.hypervisor !== 'LXC') }
@@ -281,7 +282,7 @@ export default {
         {
           api: 'resetPasswordForVirtualMachine',
           icon: 'key',
-          label: 'Reset Instance Password',
+          label: 'label.action.reset.password',
           dataView: true,
           show: (record) => { return ['Running', 'Stopped'].includes(record.state) },
           response: (result) => { return result.virtualmachine && result.virtualmachine.password ? `Password of the VM is ${result.virtualmachine.password}` : null }
@@ -289,7 +290,7 @@ export default {
         {
           api: 'resetSSHKeyForVirtualMachine',
           icon: 'lock',
-          label: 'Reset SSH Key',
+          label: 'label.reset.ssh.key.pair',
           dataView: true,
           args: ['keypair'],
           show: (record) => { return ['Running', 'Stopped'].includes(record.state) },
@@ -302,7 +303,7 @@ export default {
         {
           api: 'assignVirtualMachine',
           icon: 'user-add',
-          label: 'Assign Instance to Another Account',
+          label: 'label.assign.instance.another',
           dataView: true,
           component: () => import('@/views/compute/AssignInstance'),
           popup: true,
@@ -453,7 +454,7 @@ export default {
         {
           api: 'createSSHKeyPair',
           icon: 'plus',
-          label: 'Create SSH Key Pair',
+          label: 'label.create.ssh.key.pair',
           listView: true,
           popup: true,
           component: () => import('@/views/compute/CreateSSHKeyPair.vue')
@@ -461,7 +462,7 @@ export default {
         {
           api: 'deleteSSHKeyPair',
           icon: 'delete',
-          label: 'Delete SSH key pair',
+          label: 'label.remove.ssh.key.pair',
           dataView: true,
           args: ['name', 'account', 'domainid'],
           mapping: {
@@ -495,7 +496,7 @@ export default {
         {
           api: 'createAffinityGroup',
           icon: 'plus',
-          label: 'New Affinity Group',
+          label: 'label.add.affinity.group',
           listView: true,
           args: ['name', 'description', 'type'],
           mapping: {
@@ -507,7 +508,7 @@ export default {
         {
           api: 'deleteAffinityGroup',
           icon: 'delete',
-          label: 'Delete Affinity Group',
+          label: 'label.delete.affinity.group',
           dataView: true
         }
       ]
diff --git a/src/config/section/domain.js b/src/config/section/domain.js
index b833cda..004f2c3 100644
--- a/src/config/section/domain.js
+++ b/src/config/section/domain.js
@@ -88,7 +88,7 @@ export default {
     {
       api: 'linkDomainToLdap',
       icon: 'link',
-      label: 'Link Domain to LDAP Group/OU',
+      label: 'label.link.domain.to.ldap',
       listView: true,
       dataView: true,
       args: ['type', 'domainid', 'name', 'accounttype', 'admin'],
@@ -107,7 +107,7 @@ export default {
     {
       api: 'deleteDomain',
       icon: 'delete',
-      label: 'label.delete.domain',
+      label: 'label.action.delete.domain',
       listView: true,
       dataView: true,
       show: (record) => { return record.level !== 0 },
diff --git a/src/config/section/event.js b/src/config/section/event.js
index 43b4738..36ef1f0 100644
--- a/src/config/section/event.js
+++ b/src/config/section/event.js
@@ -31,7 +31,7 @@ export default {
     {
       api: 'archiveEvents',
       icon: 'book',
-      label: 'Archive Event',
+      label: 'label.archive.events',
       listView: false,
       dataView: true,
       args: ['ids'],
@@ -44,7 +44,7 @@ export default {
     {
       api: 'deleteEvents',
       icon: 'delete',
-      label: 'Delete Event',
+      label: 'label.delete.events',
       listView: false,
       dataView: true,
       args: ['ids'],
diff --git a/src/config/section/image.js b/src/config/section/image.js
index fc19e7a..6b5d2d9 100644
--- a/src/config/section/image.js
+++ b/src/config/section/image.js
@@ -51,7 +51,7 @@ export default {
         {
           api: 'registerTemplate',
           icon: 'plus',
-          label: 'Register Template',
+          label: 'label.action.register.template',
           listView: true,
           popup: true,
           component: () => import('@/views/image/RegisterOrUploadTemplate.vue')
@@ -59,7 +59,7 @@ export default {
         {
           api: 'getUploadParamsForTemplate',
           icon: 'cloud-upload',
-          label: 'Upload Local Template',
+          label: 'label.upload.template.from.local',
           listView: true,
           popup: true,
           component: () => import('@/views/image/RegisterOrUploadTemplate.vue')
@@ -74,7 +74,7 @@ export default {
         {
           api: 'extractTemplate',
           icon: 'cloud-download',
-          label: 'Download Template',
+          label: 'label.action.download.template',
           dataView: true,
           show: (record) => { return record && record.isextractable },
           args: ['zoneid', 'mode'],
@@ -91,7 +91,7 @@ export default {
         {
           api: 'updateTemplatePermissions',
           icon: 'reconciliation',
-          label: 'Update Template Permissions',
+          label: 'label.action.share.template',
           dataView: true,
           popup: true,
           show: (record, store) => { return (['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) && (record.domainid === store.userInfo.domainid && record.account === store.userInfo.account) || record.templatetype !== 'BUILTIN') },
@@ -125,7 +125,7 @@ export default {
         {
           api: 'registerIso',
           icon: 'plus',
-          label: 'Register ISO',
+          label: 'label.action.register.iso',
           listView: true,
           popup: true,
           component: () => import('@/views/image/RegisterOrUploadIso.vue')
@@ -133,7 +133,7 @@ export default {
         {
           api: 'getUploadParamsForIso',
           icon: 'cloud-upload',
-          label: 'Upload Local ISO',
+          label: 'label.upload.iso.from.local',
           listView: true,
           popup: true,
           component: () => import('@/views/image/RegisterOrUploadIso.vue')
@@ -148,7 +148,7 @@ export default {
         {
           api: 'extractIso',
           icon: 'cloud-download',
-          label: 'Download ISO',
+          label: 'label.action.download.iso',
           dataView: true,
           show: (record) => { return record && record.isextractable },
           args: ['zoneid', 'mode'],
@@ -165,7 +165,7 @@ export default {
         {
           api: 'updateIsoPermissions',
           icon: 'reconciliation',
-          label: 'Update ISO Permissions',
+          label: 'label.action.edit.iso',
           dataView: true,
           args: ['op', 'accounts', 'projectids'],
           popup: true,
diff --git a/src/config/section/infra.js b/src/config/section/infra.js
index 25989e7..e5eda5c 100644
--- a/src/config/section/infra.js
+++ b/src/config/section/infra.js
@@ -77,7 +77,7 @@ export default {
         {
           api: 'archiveAlerts',
           icon: 'book',
-          label: 'Archive Alert',
+          label: 'label.archive.alerts',
           dataView: true,
           args: ['ids'],
           mapping: {
@@ -89,7 +89,7 @@ export default {
         {
           api: 'deleteAlerts',
           icon: 'delete',
-          label: 'Delete Alert',
+          label: 'label.delete.events',
           dataView: true,
           args: ['ids'],
           mapping: {
diff --git a/src/config/section/infra/clusters.js b/src/config/section/infra/clusters.js
index 5e51fb1..955cfb2 100644
--- a/src/config/section/infra/clusters.js
+++ b/src/config/section/infra/clusters.js
@@ -62,7 +62,7 @@ export default {
     {
       api: 'updateCluster',
       icon: 'plus-square',
-      label: 'Manage Cluster',
+      label: 'label.action.manage.cluster',
       dataView: true,
       defaultArgs: { managedstate: 'Managed' },
       show: (record) => { return record.clustertype === 'CloudManaged' && ['PrepareUnmanaged', 'Unmanaged'].includes(record.state) }
@@ -70,7 +70,7 @@ export default {
     {
       api: 'updateCluster',
       icon: 'minus-square',
-      label: 'Unmanage Cluster',
+      label: 'label.action.unmanage.cluster',
       dataView: true,
       defaultArgs: { managedstate: 'Unmanaged' },
       show: (record) => { return record.clustertype === 'CloudManaged' && record.state === 'Enabled' }
diff --git a/src/config/section/infra/hosts.js b/src/config/section/infra/hosts.js
index 9c5373d..ed10e66 100644
--- a/src/config/section/infra/hosts.js
+++ b/src/config/section/infra/hosts.js
@@ -80,7 +80,7 @@ export default {
     {
       api: 'updateHost',
       icon: 'pause-circle',
-      label: 'Disable Host',
+      label: 'label.disable.host',
       dataView: true,
       defaultArgs: { allocationstate: 'Disable' },
       show: (record) => { return record.resourcestate === 'Enabled' }
@@ -88,7 +88,7 @@ export default {
     {
       api: 'updateHost',
       icon: 'play-circle',
-      label: 'Enable Host',
+      label: 'label.enable.host',
       dataView: true,
       defaultArgs: { allocationstate: 'Enable' },
       show: (record) => { return record.resourcestate === 'Disabled' }
@@ -235,7 +235,7 @@ export default {
     {
       api: 'deleteHost',
       icon: 'delete',
-      label: 'Remove Host',
+      label: 'label.action.remove.host',
       dataView: true,
       args: ['forced'],
       show: (record) => { return ['Maintenance', 'Disabled', 'Down', 'Alert', 'Disconnected'].includes(record.resourcestate) }
diff --git a/src/config/section/infra/nsp.js b/src/config/section/infra/nsp.js
index 6d31756..3884d11 100644
--- a/src/config/section/infra/nsp.js
+++ b/src/config/section/infra/nsp.js
@@ -31,7 +31,7 @@ export default {
     {
       api: 'updateNetworkServiceProvider',
       icon: 'stop',
-      label: 'Disable Provider',
+      label: 'label.disable.provider',
       dataView: true,
       args: ['state'],
       show: (record) => { return record.state === 'Enabled' },
@@ -44,7 +44,7 @@ export default {
     {
       api: 'updateNetworkServiceProvider',
       icon: 'right-circle',
-      label: 'Enable Provider',
+      label: 'label.enable.provider',
       dataView: true,
       args: ['state'],
       show: (record) => { return record.state === 'Disabled' },
diff --git a/src/config/section/infra/phynetworks.js b/src/config/section/infra/phynetworks.js
index 6373012..b772fe8 100644
--- a/src/config/section/infra/phynetworks.js
+++ b/src/config/section/infra/phynetworks.js
@@ -45,7 +45,7 @@ export default {
     {
       api: 'createPhysicalNetwork',
       icon: 'plus',
-      label: 'Create Physical Network',
+      label: 'label.add.physical.network',
       listView: true,
       args: ['name', 'zoneid', 'isolationmethods', 'vlan', 'tags', 'networkspeed', 'broadcastdomainrange'],
       mapping: {
@@ -57,7 +57,7 @@ export default {
     {
       api: 'updatePhysicalNetwork',
       icon: 'play-circle',
-      label: 'Enable Physical Network',
+      label: 'label.action.enable.physical.network',
       dataView: true,
       args: ['state'],
       show: (record) => { return record.state === 'Disabled' },
@@ -70,7 +70,7 @@ export default {
     {
       api: 'updatePhysicalNetwork',
       icon: 'stop',
-      label: 'Disable Physical Network',
+      label: 'label.action.disable.physical.network',
       dataView: true,
       args: ['state'],
       show: (record) => { return record.state === 'Enabled' },
@@ -121,7 +121,7 @@ export default {
     {
       api: 'deletePhysicalNetwork',
       icon: 'delete',
-      label: 'Delete Physical Network',
+      label: 'label.action.delete.physical.network',
       dataView: true
     }
   ]
diff --git a/src/config/section/infra/zones.js b/src/config/section/infra/zones.js
index d4de9d4..0e92514 100644
--- a/src/config/section/infra/zones.js
+++ b/src/config/section/infra/zones.js
@@ -63,7 +63,7 @@ export default {
     {
       api: 'createZone',
       icon: 'plus',
-      label: 'Add Zone',
+      label: 'label.add.zone',
       listView: true,
       popup: true,
       component: () => import('@/views/infra/zone/ZoneWizard.vue')
@@ -71,7 +71,7 @@ export default {
     {
       api: 'updateZone',
       icon: 'edit',
-      label: 'Edit Zone',
+      label: 'label.action.edit.zone',
       dataView: true,
       args: ['name', 'dns1', 'dns2', 'ip6dns1', 'ip6dns2', 'internaldns1', 'internaldns2', 'guestcidraddress', 'domain', 'localstorageenabled'],
       show: (record) => { return record.networktype === 'Advanced' }
@@ -79,7 +79,7 @@ export default {
     {
       api: 'updateZone',
       icon: 'edit',
-      label: 'Edit Zone',
+      label: 'label.action.edit.zone',
       dataView: true,
       args: ['name', 'dns1', 'dns2', 'ip6dns1', 'ip6dns2', 'internaldns1', 'internaldns2', 'domain', 'localstorageenabled'],
       show: (record) => { return record.networktype === 'Basic' }
diff --git a/src/config/section/network.js b/src/config/section/network.js
index e57200e..900de70 100644
--- a/src/config/section/network.js
+++ b/src/config/section/network.js
@@ -55,7 +55,7 @@ export default {
         {
           api: 'createNetwork',
           icon: 'plus',
-          label: 'Add Network',
+          label: 'label.add.network',
           listView: true,
           popup: true,
           component: () => import('@/views/network/CreateNetwork.vue')
@@ -63,21 +63,21 @@ export default {
         {
           api: 'updateNetwork',
           icon: 'edit',
-          label: 'Update Network',
+          label: 'label.edit',
           dataView: true,
           args: ['name', 'displaytext', 'guestvmcidr']
         },
         {
           api: 'restartNetwork',
           icon: 'sync',
-          label: 'Restart Network',
+          label: 'label.restart.network',
           dataView: true,
           args: ['makeredundant', 'cleanup']
         },
         {
           api: 'replaceNetworkACLList',
           icon: 'swap',
-          label: 'Replace ACL List',
+          label: 'label.replace.acl.list',
           dataView: true,
           show: (record) => { return record.vpcid },
           args: ['aclid', 'networkid'],
@@ -94,7 +94,7 @@ export default {
         {
           api: 'deleteNetwork',
           icon: 'delete',
-          label: 'Delete Network',
+          label: 'label.action.delete.network',
           dataView: true
         }
       ]
@@ -128,28 +128,28 @@ export default {
         {
           api: 'createVPC',
           icon: 'plus',
-          label: 'Add VPC',
+          label: 'label.add.vpc',
           listView: true,
           args: ['name', 'displaytext', 'zoneid', 'cidr', 'networkdomain', 'vpcofferingid', 'start']
         },
         {
           api: 'updateVPC',
           icon: 'edit',
-          label: 'Update VPC',
+          label: 'label.edit',
           dataView: true,
           args: ['name', 'displaytext']
         },
         {
           api: 'restartVPC',
           icon: 'sync',
-          label: 'Restart VPC',
+          label: 'label.restart.vpc',
           dataView: true,
           args: ['makeredundant', 'cleanup']
         },
         {
           api: 'deleteVPC',
           icon: 'delete',
-          label: 'Delete VPC',
+          label: 'label.remove.vpc',
           dataView: true
         }
       ]
@@ -176,14 +176,14 @@ export default {
         {
           api: 'createSecurityGroup',
           icon: 'plus',
-          label: 'Add Security Group',
+          label: 'label.add.security.group',
           listView: true,
           args: ['name', 'description']
         },
         {
           api: 'deleteSecurityGroup',
           icon: 'delete',
-          label: 'Delete Security Group',
+          label: 'label.action.delete.security.group',
           dataView: true,
           show: (record) => { return record.name !== 'default' }
         }
@@ -221,14 +221,14 @@ export default {
         {
           api: 'associateIpAddress',
           icon: 'plus',
-          label: 'Acquire New IP',
+          label: 'label.acquire.new.ip',
           listView: true,
           args: ['networkid']
         },
         {
           api: 'enableStaticNat',
           icon: 'plus-circle',
-          label: 'Enable Static NAT',
+          label: 'label.action.enable.static.nat',
           dataView: true,
           show: (record) => { return !record.virtualmachineid && !record.issourcenat },
           popup: true,
@@ -237,7 +237,7 @@ export default {
         {
           api: 'disableStaticNat',
           icon: 'minus-circle',
-          label: 'Disable Static NAT',
+          label: 'label.action.disable.static.nat',
           dataView: true,
           show: (record) => { return record.virtualmachineid },
           args: ['ipaddressid'],
@@ -250,7 +250,7 @@ export default {
         {
           api: 'disassociateIpAddress',
           icon: 'delete',
-          label: 'Release IP',
+          label: 'label.action.release.ip',
           dataView: true,
           show: (record) => { return !record.issourcenat }
         }
@@ -276,7 +276,7 @@ export default {
         {
           api: 'createPrivateGateway',
           icon: 'plus',
-          label: 'Add Private Gateway',
+          label: 'label.add.private.gateway',
           listView: true,
           args: ['physicalnetworkid', 'vlan', 'ipaddress', 'gateway', 'netmask', 'sourcenatsupported', 'aclid'],
           mapping: {
@@ -288,7 +288,7 @@ export default {
         {
           api: 'replaceNetworkACLList',
           icon: 'swap',
-          label: 'Replace ACL List',
+          label: 'label.replace.acl.list',
           dataView: true,
           args: ['aclid', 'gatewayid'],
           mapping: {
@@ -304,7 +304,7 @@ export default {
         {
           api: 'deletePrivateGateway',
           icon: 'delete',
-          label: 'Delete Private Gateway',
+          label: 'label.delete.gateway',
           dataView: true
         }
       ]
@@ -321,14 +321,14 @@ export default {
         {
           api: 'createVpnGateway',
           icon: 'plus',
-          label: 'Create VPN Gateway',
+          label: 'label.add.vpn.gateway',
           listView: true,
           args: ['vpcid']
         },
         {
           api: 'deleteVpnGateway',
           icon: 'delete',
-          label: 'Delete VPN Gateway',
+          label: 'label.delete.vpn.gateway',
           dataView: true
         }
       ]
@@ -345,7 +345,7 @@ export default {
         {
           api: 'createVpnConnection',
           icon: 'plus',
-          label: 'Create VPN Connection',
+          label: 'label.create.vpn.connection',
           listView: true,
           args: ['s2scustomergatewayid', 's2svpngatewayid', 'passive'],
           mapping: {
@@ -360,13 +360,13 @@ export default {
         {
           api: 'resetVpnConnection',
           icon: 'reload',
-          label: 'Reset VPN Connection',
+          label: 'label.reset.vpn.connection',
           dataView: true
         },
         {
           api: 'deleteVpnConnection',
           icon: 'delete',
-          label: 'Delete VPN Connection',
+          label: 'label.delete.vpn.connection',
           dataView: true
         }
       ]
@@ -391,21 +391,21 @@ export default {
         {
           api: 'createNetworkACLList',
           icon: 'plus',
-          label: 'Add ACL List',
+          label: 'label.add.acl.list',
           listView: true,
           args: ['name', 'description', 'vpcid']
         },
         {
           api: 'updateNetworkACLList',
           icon: 'edit',
-          label: 'Edit ACL List',
+          label: 'label.edit.acl.list',
           dataView: true,
           args: ['name', 'description']
         },
         {
           api: 'deleteNetworkACLList',
           icon: 'delete',
-          label: 'Delete ACL List',
+          label: 'label.delete.acl.list',
           dataView: true
         }
       ]
@@ -430,7 +430,7 @@ export default {
         {
           api: 'createLoadBalancer',
           icon: 'plus',
-          label: 'Add Internal LB',
+          label: 'label.add.internal.lb',
           listView: true,
           args: ['name', 'description', 'sourceipaddress', 'sourceport', 'instanceport', 'algorithm', 'networkid', 'sourceipaddressnetworkid', 'scheme'],
           mapping: {
@@ -453,7 +453,7 @@ export default {
         {
           api: 'assignToLoadBalancerRule',
           icon: 'plus',
-          label: 'Assign VMs',
+          label: 'label.assign.vms',
           dataView: true,
           popup: true,
           component: () => import('@/views/network/InternalLBAssignVmForm.vue')
@@ -461,7 +461,7 @@ export default {
         {
           api: 'deleteLoadBalancer',
           icon: 'delete',
-          label: 'Delete LB',
+          label: 'label.delete.internal.lb',
           dataView: true
         }
       ]
@@ -477,14 +477,14 @@ export default {
         {
           api: 'addVpnUser',
           icon: 'plus',
-          label: 'Add VPN User',
+          label: 'label.add.vpn.user',
           listView: true,
           args: ['username', 'password', 'domainid', 'account']
         },
         {
           api: 'removeVpnUser',
           icon: 'delete',
-          label: 'Delete VPN User',
+          label: 'label.delete.vpn.user',
           dataView: true,
           args: ['username', 'domainid', 'account'],
           mapping: {
@@ -512,7 +512,7 @@ export default {
         {
           api: 'createVpnCustomerGateway',
           icon: 'plus',
-          label: 'Add VPN Customer Gateway',
+          label: 'label.add.vpn.customer.gateway',
           listView: true,
           popup: true,
           component: () => import('@/views/network/CreateVpnCustomerGateway.vue')
@@ -520,14 +520,14 @@ export default {
         {
           api: 'updateVpnCustomerGateway',
           icon: 'edit',
-          label: 'Edit VPN Customer Gateway',
+          label: 'label.edit',
           dataView: true,
           args: ['name', 'gateway', 'cidrlist', 'ipsecpsk', 'ikepolicy', 'ikelifetime', 'esppolicy', 'esplifetime', 'dpd', 'forceencap']
         },
         {
           api: 'deleteVpnCustomerGateway',
           icon: 'delete',
-          label: 'Delete VPN Customer Gateway',
+          label: 'label.delete.vpn.customer.gateway',
           dataView: true
         }
       ]
diff --git a/src/config/section/offering.js b/src/config/section/offering.js
index dfc7501..878a3ca 100644
--- a/src/config/section/offering.js
+++ b/src/config/section/offering.js
@@ -37,27 +37,27 @@ export default {
       actions: [{
         api: 'createServiceOffering',
         icon: 'plus',
-        label: 'Add Offering',
+        label: 'label.add.compute.offering',
         listView: true,
         popup: true,
         component: () => import('@/views/offering/AddComputeOffering.vue')
       }, {
         api: 'updateServiceOffering',
         icon: 'edit',
-        label: 'Edit Offering',
+        label: 'label.edit',
         dataView: true,
         args: ['name', 'displaytext']
       }, {
         api: 'updateServiceOffering',
         icon: 'lock',
-        label: 'Update Offering Access',
+        label: 'label.action.update.offering.access',
         dataView: true,
         popup: true,
         component: () => import('@/views/offering/UpdateOfferingAccess.vue')
       }, {
         api: 'deleteServiceOffering',
         icon: 'delete',
-        label: 'Delete Offering',
+        label: 'label.action.delete.service.offering',
         dataView: true
       }]
     },
@@ -72,7 +72,7 @@ export default {
       actions: [{
         api: 'createServiceOffering',
         icon: 'plus',
-        label: 'Add Offering',
+        label: 'label.add.system.service.offering',
         listView: true,
         params: { issystem: 'true' },
         popup: true,
@@ -80,14 +80,14 @@ export default {
       }, {
         api: 'updateServiceOffering',
         icon: 'edit',
-        label: 'Edit Offering',
+        label: 'label.edit',
         dataView: true,
         params: { issystem: 'true' },
         args: ['name', 'displaytext']
       }, {
         api: 'deleteServiceOffering',
         icon: 'delete',
-        label: 'Delete Offering',
+        label: 'label.action.delete.system.service.offering',
         dataView: true,
         params: { issystem: 'true' }
       }]
@@ -108,27 +108,27 @@ export default {
       actions: [{
         api: 'createDiskOffering',
         icon: 'plus',
-        label: 'Add Offering',
+        label: 'label.add.disk.offering',
         listView: true,
         popup: true,
         component: () => import('@/views/offering/AddDiskOffering.vue')
       }, {
         api: 'updateDiskOffering',
         icon: 'edit',
-        label: 'Edit Offering',
+        label: 'label.edit',
         dataView: true,
         args: ['name', 'displaytext']
       }, {
         api: 'updateDiskOffering',
         icon: 'lock',
-        label: 'Update Offering Access',
+        label: 'label.action.update.offering.access',
         dataView: true,
         popup: true,
         component: () => import('@/views/offering/UpdateOfferingAccess.vue')
       }, {
         api: 'deleteDiskOffering',
         icon: 'delete',
-        label: 'Delete Offering',
+        label: 'label.action.delete.disk.offering',
         dataView: true
       }]
     },
@@ -142,14 +142,14 @@ export default {
       actions: [{
         api: 'importBackupOffering',
         icon: 'plus',
-        label: 'Import Offering',
+        label: 'label.import.backup.offering',
         listView: true,
         popup: true,
         component: () => import('@/views/offering/ImportBackupOffering.vue')
       }, {
         api: 'deleteBackupOffering',
         icon: 'delete',
-        label: 'Delete Offering',
+        label: 'label.action.delete.backup.offering',
         dataView: true
       }]
     },
@@ -164,14 +164,14 @@ export default {
       actions: [{
         api: 'createNetworkOffering',
         icon: 'plus',
-        label: 'Add Offering',
+        label: 'label.add.network.offering',
         listView: true,
         popup: true,
         component: () => import('@/views/offering/AddNetworkOffering.vue')
       }, {
         api: 'updateNetworkOffering',
         icon: 'edit',
-        label: 'Edit Offering',
+        label: 'label.edit',
         dataView: true,
         args: ['name', 'displaytext', 'availability'],
         mapping: {
@@ -182,7 +182,7 @@ export default {
       }, {
         api: 'updateNetworkOffering',
         icon: 'play-circle',
-        label: 'Enable Offering',
+        label: 'label.enable.network.offering',
         dataView: true,
         show: (record) => { return record.state === 'Disabled' },
         args: ['state'],
@@ -194,7 +194,7 @@ export default {
       }, {
         api: 'updateNetworkOffering',
         icon: 'pause-circle',
-        label: 'Disable Offering',
+        label: 'label.disable.network.offering',
         dataView: true,
         show: (record) => { return record.state === 'Enabled' },
         args: ['state'],
@@ -206,14 +206,14 @@ export default {
       }, {
         api: 'updateNetworkOffering',
         icon: 'lock',
-        label: 'Update Offering Access',
+        label: 'label.action.update.offering.access',
         dataView: true,
         popup: true,
         component: () => import('@/views/offering/UpdateOfferingAccess.vue')
       }, {
         api: 'deleteNetworkOffering',
         icon: 'delete',
-        label: 'Delete Offering',
+        label: 'label.remove.network.offering',
         dataView: true
       }]
     },
@@ -234,20 +234,20 @@ export default {
       actions: [{
         api: 'createVPCOffering',
         icon: 'plus',
-        label: 'Add Offering',
+        label: 'label.add.vpc.offering',
         listView: true,
         popup: true,
         component: () => import('@/views/offering/AddVpcOffering.vue')
       }, {
         api: 'updateVPCOffering',
         icon: 'edit',
-        label: 'Edit Offering',
+        label: 'label.edit',
         dataView: true,
         args: ['name', 'displaytext']
       }, {
         api: 'updateVPCOffering',
         icon: 'play-circle',
-        label: 'Enable Offering',
+        label: 'label.enable.vpc.offering',
         dataView: true,
         show: (record) => { return record.state === 'Disabled' },
         args: ['state'],
@@ -259,7 +259,7 @@ export default {
       }, {
         api: 'updateVPCOffering',
         icon: 'pause-circle',
-        label: 'Disable Offering',
+        label: 'label.disable.vpc.offering',
         dataView: true,
         show: (record) => { return record.state === 'Enabled' },
         args: ['state'],
@@ -271,14 +271,14 @@ export default {
       }, {
         api: 'updateVPCOffering',
         icon: 'lock',
-        label: 'Update Offering Access',
+        label: 'label.action.update.offering.access',
         dataView: true,
         popup: true,
         component: () => import('@/views/offering/UpdateOfferingAccess.vue')
       }, {
         api: 'deleteVPCOffering',
         icon: 'delete',
-        label: 'Delete Offering',
+        label: 'label.remove.vpc.offering',
         dataView: true
       }]
     }
diff --git a/src/config/section/project.js b/src/config/section/project.js
index a0334e7..eb67db3 100644
--- a/src/config/section/project.js
+++ b/src/config/section/project.js
@@ -43,7 +43,7 @@ export default {
     {
       api: 'createProject',
       icon: 'plus',
-      label: 'New Project',
+      label: 'label.new.project',
       listView: true,
       args: ['name', 'displaytext']
     },
@@ -71,28 +71,28 @@ export default {
     {
       api: 'updateProject',
       icon: 'edit',
-      label: 'Edit Project',
+      label: 'label.edit.project.details',
       dataView: true,
       args: ['displaytext']
     },
     {
       api: 'activateProject',
       icon: 'play-circle',
-      label: 'Activate Project',
+      label: 'label.activate.project',
       dataView: true,
       show: (record) => { return record.state === 'Suspended' }
     },
     {
       api: 'suspendProject',
       icon: 'pause-circle',
-      label: 'Suspend Project',
+      label: 'label.suspend.project',
       dataView: true,
       show: (record) => { return record.state !== 'Suspended' }
     },
     {
       api: 'addAccountToProject',
       icon: 'user-add',
-      label: 'Add Account to Project',
+      label: 'label.action.project.add.account',
       dataView: true,
       args: ['projectid', 'account', 'email'],
       show: (record, store) => { return record.account === store.userInfo.account || ['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) },
@@ -105,7 +105,7 @@ export default {
     {
       api: 'deleteProject',
       icon: 'delete',
-      label: 'Delete Project',
+      label: 'label.delete.project',
       dataView: true
     }
   ]
diff --git a/src/config/section/role.js b/src/config/section/role.js
index a4a0a07..f68253b 100644
--- a/src/config/section/role.js
+++ b/src/config/section/role.js
@@ -33,7 +33,7 @@ export default {
     {
       api: 'createRole',
       icon: 'plus',
-      label: 'Create Role',
+      label: 'label.add.role',
       listView: true,
       args: ['name', 'description', 'type'],
       mapping: {
@@ -45,7 +45,7 @@ export default {
     {
       api: 'updateRole',
       icon: 'edit',
-      label: 'Edit Role',
+      label: 'label.edit.role',
       dataView: true,
       args: ['name', 'description', 'type'],
       mapping: {
diff --git a/src/config/section/storage.js b/src/config/section/storage.js
index b9cd42b..a79af77 100644
--- a/src/config/section/storage.js
+++ b/src/config/section/storage.js
@@ -37,7 +37,7 @@ export default {
         {
           api: 'createVolume',
           icon: 'plus',
-          label: 'Create Volume',
+          label: 'label.action.create.volume',
           listView: true,
           popup: true,
           component: () => import('@/views/storage/CreateVolume.vue')
@@ -45,7 +45,7 @@ export default {
         {
           api: 'getUploadParamsForVolume',
           icon: 'cloud-upload',
-          label: 'Upload Local Volume',
+          label: 'label.upload.volume.from.local',
           listView: true,
           popup: true,
           component: () => import('@/views/storage/UploadLocalVolume.vue')
@@ -53,7 +53,7 @@ export default {
         {
           api: 'uploadVolume',
           icon: 'link',
-          label: 'Upload Volume From URL',
+          label: 'label.upload.volume.from.url',
           listView: true,
           args: ['url', 'name', 'zoneid', 'format', 'diskofferingid', 'checksum'],
           mapping: {
@@ -65,7 +65,7 @@ export default {
         {
           api: 'attachVolume',
           icon: 'paper-clip',
-          label: 'Attach Volume',
+          label: 'label.action.attach.disk',
           args: ['virtualmachineid'],
           dataView: true,
           show: (record) => { return record.type !== 'ROOT' && record.state !== 'Destroy' && !('virtualmachineid' in record) }
@@ -73,14 +73,14 @@ export default {
         {
           api: 'detachVolume',
           icon: 'link',
-          label: 'Detach Volume',
+          label: 'label.action.detach.disk',
           dataView: true,
           show: (record) => { return record.type !== 'ROOT' && 'virtualmachineid' in record && record.virtualmachineid }
         },
         {
           api: 'createSnapshot',
           icon: 'camera',
-          label: 'Take Snapshot',
+          label: 'label.action.take.snapshot',
           dataView: true,
           show: (record) => { return record.state === 'Ready' },
           popup: true,
@@ -89,7 +89,7 @@ export default {
         {
           api: 'createSnapshotPolicy',
           icon: 'clock-circle',
-          label: 'Recurring Snapshots',
+          label: 'label.action.recurring.snapshot',
           dataView: true,
           show: (record) => { return record.state === 'Ready' },
           popup: true,
@@ -106,7 +106,7 @@ export default {
         {
           api: 'resizeVolume',
           icon: 'fullscreen',
-          label: 'Resize Volume',
+          label: 'label.action.resize.volume',
           dataView: true,
           popup: true,
           show: (record) => { return record.state !== 'Destroy' },
@@ -115,7 +115,7 @@ export default {
         {
           api: 'migrateVolume',
           icon: 'drag',
-          label: 'Migrate Volume',
+          label: 'label.migrate.volume',
           args: ['volumeid', 'storageid', 'livemigrate'],
           dataView: true,
           show: (record, store) => { return record && record.state === 'Ready' && ['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) },
@@ -133,7 +133,7 @@ export default {
         {
           api: 'extractVolume',
           icon: 'cloud-download',
-          label: 'Download Volume',
+          label: 'label.action.download.volume',
           dataView: true,
           show: (record) => { return record && record.state === 'Ready' && (record.vmstate === 'Stopped' || record.virtualmachineid == null) && record.state !== 'Destroy' },
           args: ['zoneid', 'mode'],
@@ -150,7 +150,7 @@ export default {
         {
           api: 'createTemplate',
           icon: 'picture',
-          label: 'Create Template from Volume',
+          label: 'label.action.create.template.from.volume',
           dataView: true,
           show: (record) => { return (record.type === 'ROOT' && record.vmstate === 'Stopped') || (record.type !== 'ROOT' && !('virtualmachineid' in record) && !['Allocated', 'Uploaded', 'Destroy'].includes(record.state)) },
           args: ['volumeid', 'name', 'displaytext', 'ostypeid', 'ispublic', 'isfeatured', 'isdynamicallyscalable', 'requireshvm', 'passwordenabled', 'sshkeyenabled'],
@@ -163,7 +163,7 @@ export default {
         {
           api: 'recoverVolume',
           icon: 'medicine-box',
-          label: 'Recover Volume',
+          label: 'label.action.recover.volume',
           dataView: true,
           show: (record, store) => {
             return (['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) || store.features.allowuserexpungerecovervolume) && record.state === 'Destroy'
@@ -172,7 +172,7 @@ export default {
         {
           api: 'deleteVolume',
           icon: 'delete',
-          label: 'Delete Volume',
+          label: 'label.action.delete.volume',
           dataView: true,
           groupAction: true,
           show: (record, store) => {
@@ -183,7 +183,7 @@ export default {
         {
           api: 'destroyVolume',
           icon: 'delete',
-          label: 'Destroy Volume',
+          label: 'label.action.destroy.volume',
           dataView: true,
           args: (record, store) => {
             return (!['Admin', 'DomainAdmin'].includes(store.userInfo.roletype) && !store.features.allowuserexpungerecovervolumestore) ? [] : ['expunge']
@@ -206,7 +206,7 @@ export default {
         {
           api: 'createTemplate',
           icon: 'picture',
-          label: 'Create Template',
+          label: 'label.create.template',
           dataView: true,
           show: (record) => { return record.state === 'BackedUp' },
           args: ['snapshotid', 'name', 'displaytext', 'ostypeid', 'ispublic', 'isfeatured', 'isdynamicallyscalable', 'requireshvm', 'passwordenabled', 'sshkeyenabled'],
@@ -219,7 +219,7 @@ export default {
         {
           api: 'createVolume',
           icon: 'hdd',
-          label: 'Create Volume',
+          label: 'label.action.create.volume',
           dataView: true,
           show: (record) => { return record.state === 'BackedUp' },
           args: ['snapshotid', 'name'],
@@ -232,14 +232,14 @@ export default {
         {
           api: 'revertSnapshot',
           icon: 'sync',
-          label: 'Revert Snapshot',
+          label: 'label.action.revert.snapshot',
           dataView: true,
           show: (record) => { return record.revertable }
         },
         {
           api: 'deleteSnapshot',
           icon: 'delete',
-          label: 'Delete Snapshot',
+          label: 'label.action.delete.snapshot',
           dataView: true
         }
       ]
@@ -256,7 +256,7 @@ export default {
         {
           api: 'revertToVMSnapshot',
           icon: 'sync',
-          label: 'Revert VM snapshot',
+          label: 'label.action.vmsnapshot.revert',
           dataView: true,
           show: (record) => { return record.state === 'Ready' },
           args: ['vmsnapshotid'],
@@ -269,7 +269,7 @@ export default {
         {
           api: 'deleteVMSnapshot',
           icon: 'delete',
-          label: 'Delete VM Snapshot',
+          label: 'label.action.vmsnapshot.delete',
           dataView: true,
           args: ['vmsnapshotid'],
           mapping: {
@@ -291,7 +291,7 @@ export default {
         {
           api: 'restoreBackup',
           icon: 'sync',
-          label: 'Restore Backup',
+          label: 'label.backup.restore',
           dataView: true
         },
         {
@@ -305,7 +305,7 @@ export default {
         {
           api: 'removeVirtualMachineFromBackupOffering',
           icon: 'scissor',
-          label: 'Expunge Offering Assignment and Delete Backups',
+          label: 'label.backup.offering.remove',
           dataView: true,
           args: ['forced', 'virtualmachineid'],
           mapping: {