diff --git a/app/Abstracts/Notification.php b/app/Abstracts/Notification.php
index 8162ff98c..367af653f 100644
--- a/app/Abstracts/Notification.php
+++ b/app/Abstracts/Notification.php
@@ -91,7 +91,7 @@ abstract class Notification extends BaseNotification implements ShouldQueue
public function getFooter()
{
- $url = 'https://akaunting.com/lp/accounting-software?utm_source=email&utm_medium=software&utm_campaign=footer&utm_content=' . $this->template->alias;
+ $url = 'https://akaunting.com/lp/accounting-software?utm_source=email&utm_medium=footer&utm_campaign=plg&utm_content=' . $this->template->alias;
$get_started = '' . trans('footer.get_started') . '';
diff --git a/app/Abstracts/Widget.php b/app/Abstracts/Widget.php
index 92620a984..a5d8eccc9 100644
--- a/app/Abstracts/Widget.php
+++ b/app/Abstracts/Widget.php
@@ -63,7 +63,7 @@ abstract class Widget
'alias' => $alias,
'utm_source' => 'widget',
'utm_medium' => 'app',
- 'utm_campaign' => Str::snake(Str::camel($alias)),
+ 'utm_campaign' => str_replace('-', '_', $alias),
]);
}
diff --git a/app/Listeners/Menu/ShowInNotifications.php b/app/Listeners/Menu/ShowInNotifications.php
index c73da1ecc..db5168fdc 100644
--- a/app/Listeners/Menu/ShowInNotifications.php
+++ b/app/Listeners/Menu/ShowInNotifications.php
@@ -62,8 +62,8 @@ class ShowInNotifications
$app_url = route('apps.app.show', [
'alias' => $new_app->alias,
'utm_source' => 'notification',
- 'utm_medium' => 'software',
- 'utm_campaign' => str_replace('-', '', $new_app->alias),
+ 'utm_medium' => 'app',
+ 'utm_campaign' => str_replace('-', '_', $new_app->alias),
]);
$new = new DatabaseNotification();
diff --git a/app/Traits/Cloud.php b/app/Traits/Cloud.php
index 01a6e69c1..53c0231b4 100644
--- a/app/Traits/Cloud.php
+++ b/app/Traits/Cloud.php
@@ -15,10 +15,10 @@ trait Cloud
return request()->getHost() == $this->cloud_host;
}
- public function getCloudRolesPageUrl()
+ public function getCloudRolesPageUrl($location = 'user')
{
if (! $this->isCloud()) {
- return 'https://akaunting.com/plans?utm_source=user_role&utm_medium=software&utm_campaign=plg';
+ return 'https://akaunting.com/apps/roles?utm_source=software&utm_medium=' . $location . '&utm_campaign=roles';
}
if ($this->moduleIsEnabled('roles')) {
@@ -26,20 +26,20 @@ trait Cloud
}
return route('cloud.plans.index', [
- 'utm_source' => 'user',
+ 'utm_source' => $location,
'utm_medium' => 'app',
'utm_campaign' => 'roles',
]);
}
- public function getCloudBankFeedsUrl()
+ public function getCloudBankFeedsUrl($location = 'widget')
{
if (! $this->isCloud()) {
- return 'https://akaunting.com/features/connect-your-bank?utm_source=bank_feeds_widget&utm_medium=software&utm_campaign=plg';
+ return 'https://akaunting.com/apps/bank-feeds?utm_source=software&utm_medium=' . $location . '&utm_campaign=bank_feeds';
}
return route('cloud.plans.index', [
- 'utm_source' => 'widget',
+ 'utm_source' => $location,
'utm_medium' => 'app',
'utm_campaign' => 'bank_feeds',
]);
diff --git a/resources/assets/js/views/common/companies.js b/resources/assets/js/views/common/companies.js
index a6d7affbc..c43366979 100644
--- a/resources/assets/js/views/common/companies.js
+++ b/resources/assets/js/views/common/companies.js
@@ -30,5 +30,22 @@ const app = new Vue({
form: new Form('company'),
bulk_action: new BulkAction('companies')
}
+ },
+
+ methods: {
+ // Form Submit
+ onSubmit() {
+ this.form.loading = true;
+
+ if (this.form.country === "") {
+ this.form.errors.set('country', [country_validation_required_message]);
+
+ this.form.loading = false;
+
+ return;
+ }
+
+ this.form.submit();
+ },
}
});
diff --git a/resources/views/common/companies/create.blade.php b/resources/views/common/companies/create.blade.php
index de716fea0..272842883 100644
--- a/resources/views/common/companies/create.blade.php
+++ b/resources/views/common/companies/create.blade.php
@@ -44,7 +44,7 @@