diff --git a/src/resources/js/bootstrap.js b/src/resources/js/bootstrap.js --- a/src/resources/js/bootstrap.js +++ b/src/resources/js/bootstrap.js @@ -20,12 +20,16 @@ import FontAwesomeIcon from './fontawesome' import Vue from 'vue' import VueRouter from 'vue-router' +import Btn from '../vue/Widgets/Btn' +import BtnRouter from '../vue/Widgets/BtnRouter' import Toast from '../vue/Widgets/Toast' import store from './store' window.Vue = Vue Vue.component('SvgIcon', FontAwesomeIcon) +Vue.component('Btn', Btn) +Vue.component('BtnRouter', BtnRouter) const vTooltip = (el, binding) => { let t = [] diff --git a/src/resources/vue/Admin/Domain.vue b/src/resources/vue/Admin/Domain.vue --- a/src/resources/vue/Admin/Domain.vue +++ b/src/resources/vue/Admin/Domain.vue @@ -25,12 +25,12 @@
- - +
diff --git a/src/resources/vue/Admin/User.vue b/src/resources/vue/Admin/User.vue --- a/src/resources/vue/Admin/User.vue +++ b/src/resources/vue/Admin/User.vue @@ -58,7 +58,7 @@
{{ user.external_email }} - + {{ $t('btn.edit') }}
@@ -76,12 +76,12 @@
- - +
@@ -147,7 +147,7 @@
{{ wallet.discount ? (wallet.discount + '% - ' + wallet.discount_description) : 'none' }} - + {{ $t('btn.edit') }}
@@ -173,8 +173,8 @@
- - + {{ $t('user.add-bonus') }} + {{ $t('user.add-penalty') }}

{{ $t('wallet.transactions') }}

@@ -231,12 +231,8 @@ ¹ {{ $t('user.discount-hint') }}: {{ discount }}% - {{ discount_description }}
- - + {{ $t('user.reset-2fa') }} + {{ $t('user.add-beta') }}
@@ -408,7 +404,7 @@ @@ -433,7 +427,7 @@ @@ -455,7 +447,7 @@ @@ -487,15 +477,15 @@ diff --git a/src/resources/vue/Distlist/Info.vue b/src/resources/vue/Distlist/Info.vue --- a/src/resources/vue/Distlist/Info.vue +++ b/src/resources/vue/Distlist/Info.vue @@ -6,9 +6,7 @@
{{ $tc('distlist.list-title', 1) }} - + {{ $t('distlist.delete') }}
{{ $t('distlist.new') }}
@@ -51,7 +49,7 @@
- + {{ $t('btn.submit') }}
@@ -65,7 +63,7 @@
- + {{ $t('btn.submit') }} diff --git a/src/resources/vue/Distlist/List.vue b/src/resources/vue/Distlist/List.vue --- a/src/resources/vue/Distlist/List.vue +++ b/src/resources/vue/Distlist/List.vue @@ -5,9 +5,9 @@
{{ $tc('distlist.list-title', 2) }} {{ $t('dashboard.beta') }} - - {{ $t('distlist.create') }} - + + {{ $t('distlist.create') }} +
diff --git a/src/resources/vue/Domain/Info.vue b/src/resources/vue/Domain/Info.vue --- a/src/resources/vue/Domain/Info.vue +++ b/src/resources/vue/Domain/Info.vue @@ -6,12 +6,7 @@
{{ $t('domain.new') }}
{{ $t('form.domain') }} - + {{ $t('domain.delete') }}
- + {{ $t('btn.submit') }}
@@ -67,7 +60,7 @@ {{ $t('domain.verify-outro') }}

{{ $t('domain.verify-sample') }}

{{ domain.dns.join("\n") }}

- + {{ $t('btn.verify') }}
@@ -92,7 +85,7 @@
- + {{ $t('form.submit') }} @@ -105,16 +98,14 @@ diff --git a/src/resources/vue/Domain/List.vue b/src/resources/vue/Domain/List.vue --- a/src/resources/vue/Domain/List.vue +++ b/src/resources/vue/Domain/List.vue @@ -4,16 +4,15 @@
{{ $t('user.domains') }} - - {{ $t('domain.create') }} - + + {{ $t('domain.create') }} +
- @@ -22,12 +21,11 @@ {{ domain.namespace }} - - +
{{ $t('domain.namespace') }}
{{ $t('user.domains-none') }}{{ $t('user.domains-none') }}
diff --git a/src/resources/vue/Login.vue b/src/resources/vue/Login.vue --- a/src/resources/vue/Login.vue +++ b/src/resources/vue/Login.vue @@ -28,9 +28,7 @@ {{ $t('login.2fa_desc') }}
- + {{ $t('login.sign_in') }}
diff --git a/src/resources/vue/Meet/Room.vue b/src/resources/vue/Meet/Room.vue --- a/src/resources/vue/Meet/Room.vue +++ b/src/resources/vue/Meet/Room.vue @@ -126,13 +126,13 @@ @@ -143,7 +143,7 @@ diff --git a/src/resources/vue/Meet/RoomOptions.vue b/src/resources/vue/Meet/RoomOptions.vue --- a/src/resources/vue/Meet/RoomOptions.vue +++ b/src/resources/vue/Meet/RoomOptions.vue @@ -5,7 +5,7 @@ diff --git a/src/resources/vue/PasswordReset.vue b/src/resources/vue/PasswordReset.vue --- a/src/resources/vue/PasswordReset.vue +++ b/src/resources/vue/PasswordReset.vue @@ -12,7 +12,7 @@ - + {{ $t('btn.continue') }} @@ -28,8 +28,8 @@ - - + {{ $t('btn.back') }} + {{ $t('btn.continue') }} @@ -52,8 +52,8 @@ Second factor code is optional for users with no 2-Factor Authentication setup. - - + {{ $t('btn.back') }} + {{ $t('btn.submit') }} diff --git a/src/resources/vue/Reseller/Invitations.vue b/src/resources/vue/Reseller/Invitations.vue --- a/src/resources/vue/Reseller/Invitations.vue +++ b/src/resources/vue/Reseller/Invitations.vue @@ -8,11 +8,7 @@
-
- -
+ {{ $t('invitation.create') }}
@@ -33,14 +29,12 @@ {{ inv.created }} @@ -56,7 +50,7 @@ diff --git a/src/resources/vue/Resource/Info.vue b/src/resources/vue/Resource/Info.vue --- a/src/resources/vue/Resource/Info.vue +++ b/src/resources/vue/Resource/Info.vue @@ -6,9 +6,7 @@
{{ $tc('resource.list-title', 1) }} - + {{ $t('resource.delete') }}
{{ $t('resource.new') }}
@@ -53,7 +51,7 @@
- + {{ $t('btn.submit') }}
@@ -74,7 +72,7 @@
- + {{ $t('btn.submit') }} diff --git a/src/resources/vue/Resource/List.vue b/src/resources/vue/Resource/List.vue --- a/src/resources/vue/Resource/List.vue +++ b/src/resources/vue/Resource/List.vue @@ -5,9 +5,9 @@
{{ $tc('resource.list-title', 2) }} {{ $t('dashboard.beta') }} - - {{ $t('resource.create') }} - + + {{ $t('resource.create') }} +
- - +
diff --git a/src/resources/vue/Settings.vue b/src/resources/vue/Settings.vue --- a/src/resources/vue/Settings.vue +++ b/src/resources/vue/Settings.vue @@ -19,7 +19,7 @@ - + {{ $t('btn.submit') }} diff --git a/src/resources/vue/SharedFolder/Info.vue b/src/resources/vue/SharedFolder/Info.vue --- a/src/resources/vue/SharedFolder/Info.vue +++ b/src/resources/vue/SharedFolder/Info.vue @@ -6,9 +6,7 @@
{{ $tc('shf.list-title', 1) }} - + {{ $t('shf.delete') }}
{{ $t('shf.new') }}
@@ -61,7 +59,7 @@
- + {{ $t('btn.submit') }}
@@ -75,7 +73,7 @@
- + {{ $t('btn.submit') }} diff --git a/src/resources/vue/SharedFolder/List.vue b/src/resources/vue/SharedFolder/List.vue --- a/src/resources/vue/SharedFolder/List.vue +++ b/src/resources/vue/SharedFolder/List.vue @@ -5,9 +5,9 @@
{{ $tc('shf.list-title', 2) }} {{ $t('dashboard.beta') }} - - {{ $t('shf.create') }} - + + {{ $t('shf.create') }} +
diff --git a/src/resources/vue/Signup.vue b/src/resources/vue/Signup.vue --- a/src/resources/vue/Signup.vue +++ b/src/resources/vue/Signup.vue @@ -10,7 +10,7 @@
- +
@@ -35,8 +35,8 @@ - - + {{ $t('btn.back') }} + {{ $t('btn.continue') }} @@ -52,8 +52,8 @@ - - + {{ $t('btn.back') }} + {{ $t('btn.continue') }} @@ -88,10 +88,11 @@ - - + {{ $t('btn.back') }} + + {{ $t('btn.signup') }} + {{ $t('btn.submit') }} + diff --git a/src/resources/vue/User/Info.vue b/src/resources/vue/User/Info.vue --- a/src/resources/vue/User/Info.vue +++ b/src/resources/vue/User/Info.vue @@ -5,12 +5,9 @@
{{ $t('user.title') }} - + + {{ $t('user.delete') }} +
{{ $t('user.new') }}
@@ -78,12 +75,8 @@
@@ -96,7 +89,7 @@
- + {{ $t('btn.submit') }}
@@ -110,7 +103,7 @@
- + {{ $t('btn.submit') }} @@ -122,16 +115,14 @@ diff --git a/src/resources/vue/User/List.vue b/src/resources/vue/User/List.vue --- a/src/resources/vue/User/List.vue +++ b/src/resources/vue/User/List.vue @@ -8,11 +8,9 @@
-
- - {{ $t('user.create') }} - -
+ + {{ $t('user.create') }} +
diff --git a/src/resources/vue/User/Profile.vue b/src/resources/vue/User/Profile.vue --- a/src/resources/vue/User/Profile.vue +++ b/src/resources/vue/User/Profile.vue @@ -4,13 +4,9 @@
{{ $t('user.profile-title') }} - - {{ $t('user.profile-delete') }} - + + {{ $t('user.profile-delete') }} +
@@ -69,7 +65,7 @@
- + {{ $t('btn.submit') }}
diff --git a/src/resources/vue/User/ProfileDelete.vue b/src/resources/vue/User/ProfileDelete.vue --- a/src/resources/vue/User/ProfileDelete.vue +++ b/src/resources/vue/User/ProfileDelete.vue @@ -8,10 +8,10 @@

{{ $t('user.profile-delete-text2') }}

{{ $t('user.profile-delete-contact', { app: $root.appName }) }}

- - +

+ {{ $t('btn.cancel') }} + {{ $t('user.profile-delete') }} +

diff --git a/src/resources/vue/Wallet.vue b/src/resources/vue/Wallet.vue --- a/src/resources/vue/Wallet.vue +++ b/src/resources/vue/Wallet.vue @@ -10,16 +10,16 @@ {{ $t('wallet.pending-payments-warning') }}

- + {{ $t('wallet.add-credit') }}

- + {{ $t('wallet.auto-payment-setup') }}
@@ -33,8 +33,8 @@ {{ $t('wallet.auto-payment-inprogress') }}

- - + {{ $t('wallet.auto-payment-cancel') }} + {{ $t('wallet.auto-payment-change') }}

@@ -69,9 +69,7 @@ - + {{ $t('btn.download') }}

{{ $t('wallet.receipts-none') }} @@ -96,7 +94,7 @@

diff --git a/src/resources/vue/Widgets/Btn.vue b/src/resources/vue/Widgets/Btn.vue new file mode 100644 --- /dev/null +++ b/src/resources/vue/Widgets/Btn.vue @@ -0,0 +1,14 @@ + + + diff --git a/src/resources/vue/Widgets/BtnRouter.vue b/src/resources/vue/Widgets/BtnRouter.vue new file mode 100644 --- /dev/null +++ b/src/resources/vue/Widgets/BtnRouter.vue @@ -0,0 +1,23 @@ + + + diff --git a/src/resources/vue/Widgets/PackageSelect.vue b/src/resources/vue/Widgets/PackageSelect.vue --- a/src/resources/vue/Widgets/PackageSelect.vue +++ b/src/resources/vue/Widgets/PackageSelect.vue @@ -26,10 +26,9 @@ {{ $root.priceLabel(pkg.cost, discount, currency) }} diff --git a/src/resources/vue/Widgets/Status.vue b/src/resources/vue/Widgets/Status.vue --- a/src/resources/vue/Widgets/Status.vue +++ b/src/resources/vue/Widgets/Status.vue @@ -8,9 +8,9 @@
{{ $t('status.prepare-refresh') }}

- + + {{ $t('btn.refresh') }} +

@@ -19,9 +19,9 @@ {{ $t('status.verify') }}

- + + {{ $t('btn.verify') }} +
{{ $t('status.verify-domain') }} diff --git a/src/resources/vue/Widgets/SubscriptionSelect.vue b/src/resources/vue/Widgets/SubscriptionSelect.vue --- a/src/resources/vue/Widgets/SubscriptionSelect.vue +++ b/src/resources/vue/Widgets/SubscriptionSelect.vue @@ -34,10 +34,9 @@ {{ $root.priceLabel(sku.cost, discount, currency) }}
diff --git a/src/resources/vue/Widgets/SupportForm.vue b/src/resources/vue/Widgets/SupportForm.vue --- a/src/resources/vue/Widgets/SupportForm.vue +++ b/src/resources/vue/Widgets/SupportForm.vue @@ -4,36 +4,34 @@ diff --git a/src/resources/vue/Widgets/ToastMessage.vue b/src/resources/vue/Widgets/ToastMessage.vue --- a/src/resources/vue/Widgets/ToastMessage.vue +++ b/src/resources/vue/Widgets/ToastMessage.vue @@ -7,7 +7,7 @@ {{ data.title || $t('msg.' + data.type) }} - +
{{ data.msg }}
diff --git a/src/resources/vue/Widgets/TransactionLog.vue b/src/resources/vue/Widgets/TransactionLog.vue --- a/src/resources/vue/Widgets/TransactionLog.vue +++ b/src/resources/vue/Widgets/TransactionLog.vue @@ -15,12 +15,10 @@ diff --git a/src/resources/vue/Widgets/UserSearch.vue b/src/resources/vue/Widgets/UserSearch.vue --- a/src/resources/vue/Widgets/UserSearch.vue +++ b/src/resources/vue/Widgets/UserSearch.vue @@ -4,7 +4,7 @@
- + {{ $t('btn.search') }}
- +
- +
{{ transaction.createdAt }} - + {{ description(transaction) }} {{ amount(transaction) }}
diff --git a/src/tests/Browser/DegradedAccountTest.php b/src/tests/Browser/DegradedAccountTest.php --- a/src/tests/Browser/DegradedAccountTest.php +++ b/src/tests/Browser/DegradedAccountTest.php @@ -76,31 +76,31 @@ ->assertVisible('tbody tr:nth-child(3) td:first-child svg.text-warning') // John ->assertText('tbody tr:nth-child(3) td:first-child svg.text-warning title', 'Degraded'); }) - ->assertMissing('button.create-user'); + ->assertMissing('button.user-new'); // Goto /domains and assert that the warning is also displayed there $browser->visit(new DomainList()) ->assertSeeIn('#status-degraded p.alert', 'The account is degraded') ->assertSeeIn('#status-degraded p.alert', 'Please, make a payment') - ->assertMissing('button.create-domain'); + ->assertMissing('button.domain-new'); // Goto /distlists and assert that the warning is also displayed there $browser->visit(new DistlistList()) ->assertSeeIn('#status-degraded p.alert', 'The account is degraded') ->assertSeeIn('#status-degraded p.alert', 'Please, make a payment') - ->assertMissing('button.create-list'); + ->assertMissing('button.distlist-new'); // Goto /resources and assert that the warning is also displayed there $browser->visit(new ResourceList()) ->assertSeeIn('#status-degraded p.alert', 'The account is degraded') ->assertSeeIn('#status-degraded p.alert', 'Please, make a payment') - ->assertMissing('button.create-resource'); + ->assertMissing('button.resource-new'); // Goto /shared-folders and assert that the warning is also displayed there $browser->visit(new SharedFolderList()) ->assertSeeIn('#status-degraded p.alert', 'The account is degraded') ->assertSeeIn('#status-degraded p.alert', 'Please, make a payment') - ->assertMissing('button.create-resource'); + ->assertMissing('button.shared-folder-new'); // Test that /rooms is not accessible $browser->visit('/rooms') diff --git a/src/tests/Browser/DistlistTest.php b/src/tests/Browser/DistlistTest.php --- a/src/tests/Browser/DistlistTest.php +++ b/src/tests/Browser/DistlistTest.php @@ -124,8 +124,8 @@ $this->browse(function (Browser $browser) { // Create a group $browser->visit(new DistlistList()) - ->assertSeeIn('button.create-list', 'Create list') - ->click('button.create-list') + ->assertSeeIn('button.distlist-new', 'Create list') + ->click('button.distlist-new') ->on(new DistlistInfo()) ->assertSeeIn('#distlist-info .card-title', 'New distribution list') ->assertSeeIn('@nav #tab-general', 'General') diff --git a/src/tests/Browser/ResourceTest.php b/src/tests/Browser/ResourceTest.php --- a/src/tests/Browser/ResourceTest.php +++ b/src/tests/Browser/ResourceTest.php @@ -125,8 +125,8 @@ $this->browse(function (Browser $browser) { // Create a resource $browser->visit(new ResourceList()) - ->assertSeeIn('button.create-resource', 'Create resource') - ->click('button.create-resource') + ->assertSeeIn('button.resource-new', 'Create resource') + ->click('button.resource-new') ->on(new ResourceInfo()) ->assertSeeIn('#resource-info .card-title', 'New resource') ->assertSeeIn('@nav #tab-general', 'General') diff --git a/src/tests/Browser/SharedFolderTest.php b/src/tests/Browser/SharedFolderTest.php --- a/src/tests/Browser/SharedFolderTest.php +++ b/src/tests/Browser/SharedFolderTest.php @@ -131,8 +131,8 @@ $this->browse(function (Browser $browser) { // Create a folder $browser->visit(new SharedFolderList()) - ->assertSeeIn('button.create-folder', 'Create folder') - ->click('button.create-folder') + ->assertSeeIn('button.shared-folder-new', 'Create folder') + ->click('button.shared-folder-new') ->on(new SharedFolderInfo()) ->assertSeeIn('#folder-info .card-title', 'New shared folder') ->assertSeeIn('@nav #tab-general', 'General') diff --git a/src/tests/Browser/UserProfileTest.php b/src/tests/Browser/UserProfileTest.php --- a/src/tests/Browser/UserProfileTest.php +++ b/src/tests/Browser/UserProfileTest.php @@ -72,7 +72,7 @@ ->assertSeeIn('@links .link-profile', 'Your profile') ->click('@links .link-profile') ->on(new UserProfile()) - ->assertSeeIn('#user-profile .button-delete', 'Delete account') + ->assertSeeIn('#user-profile .profile-delete', 'Delete account') ->whenAvailable('@form', function (Browser $browser) { $user = User::where('email', 'john@kolab.org')->first(); // Assert form content @@ -165,7 +165,7 @@ ->assertSeeIn('@links .link-profile', 'Your profile') ->click('@links .link-profile') ->on(new UserProfile()) - ->assertMissing('#user-profile .button-delete') + ->assertMissing('#user-profile .profile-delete') ->whenAvailable('@form', function (Browser $browser) { // TODO: decide on what fields the non-controller user should be able // to see/change @@ -202,7 +202,7 @@ ->assertSeeIn('@links .link-profile', 'Your profile') ->click('@links .link-profile') ->on(new UserProfile()) - ->click('#user-profile .button-delete') + ->click('#user-profile .profile-delete') ->waitForLocation('/profile/delete') ->assertSeeIn('#user-delete .card-title', 'Delete this account?') ->assertSeeIn('#user-delete .button-cancel', 'Cancel') @@ -213,7 +213,7 @@ ->on(new UserProfile()); // Test deleting the user - $browser->click('#user-profile .button-delete') + $browser->click('#user-profile .profile-delete') ->waitForLocation('/profile/delete') ->click('#user-delete .button-delete') ->waitForLocation('/login') diff --git a/src/tests/Browser/UsersTest.php b/src/tests/Browser/UsersTest.php --- a/src/tests/Browser/UsersTest.php +++ b/src/tests/Browser/UsersTest.php @@ -405,8 +405,8 @@ $this->browse(function (Browser $browser) { $browser->visit(new UserList()) - ->assertSeeIn('button.create-user', 'Create user') - ->click('button.create-user') + ->assertSeeIn('button.user-new', 'Create user') + ->click('button.user-new') ->on(new UserInfo()) ->assertSeeIn('#user-info .card-title', 'New user account') ->with('@general', function (Browser $browser) { @@ -660,7 +660,7 @@ // Packages on new user page $this->browse(function (Browser $browser) { $browser->visit(new UserList()) - ->click('button.create-user') + ->click('button.user-new') ->on(new UserInfo()) ->with('@general', function (Browser $browser) { $browser->whenAvailable('@packages', function (Browser $browser) { @@ -768,7 +768,7 @@ // Packages on new user page $this->browse(function (Browser $browser) { $browser->visit(new UserList()) - ->click('button.create-user') + ->click('button.user-new') ->on(new UserInfo()) ->with('@general', function (Browser $browser) { $browser->whenAvailable('@packages', function (Browser $browser) {