Page MenuHomePhorge

D4229.1775163070.diff
No OneTemporary

Authored By
Unknown
Size
6 KB
Referenced Files
None
Subscribers
None

D4229.1775163070.diff

diff --git a/config.demo/src/.env b/config.demo/src/.env
--- a/config.demo/src/.env
+++ b/config.demo/src/.env
@@ -30,7 +30,7 @@
WEBMAIL_URL=/roundcubemail/
SUPPORT_URL=/support
-SUPPORT_EMAIL=
+SUPPORT_EMAIL=support@example.com
LOG_CHANNEL=stdout
LOG_SLOW_REQUESTS=5
diff --git a/config.dev/src/.env b/config.dev/src/.env
--- a/config.dev/src/.env
+++ b/config.dev/src/.env
@@ -29,7 +29,7 @@
WEBMAIL_URL=/roundcubemail/
SUPPORT_URL=/support
-SUPPORT_EMAIL=
+SUPPORT_EMAIL=support@example.com
LOG_CHANNEL=stack
LOG_SLOW_REQUESTS=5
diff --git a/config.prod/src/.env b/config.prod/src/.env
--- a/config.prod/src/.env
+++ b/config.prod/src/.env
@@ -28,7 +28,6 @@
WEBMAIL_URL=/roundcubemail/
SUPPORT_URL=/support
-SUPPORT_EMAIL=
LOG_CHANNEL=stdout
LOG_SLOW_REQUESTS=5
diff --git a/src/resources/themes/default/lang/en/support.php b/src/resources/themes/default/lang/en/support.php
--- a/src/resources/themes/default/lang/en/support.php
+++ b/src/resources/themes/default/lang/en/support.php
@@ -1,7 +1,12 @@
<?php
return [
-
+ 'title' => "Contact Support",
+ 'text1' => "Our technical support team is here to provide help, should you run into issues."
+ . " You won’t have to talk to computers or navigate voice menus, but have actual human beings answering you personally.",
+ 'text2' => "This support is already included in your subscription fee, so there are no further costs for you."
+ . " If you have issues with your :site account, or questions about our product before you sign up, please contact us.",
+ 'contact' => "Contact Support",
'doc1' => "Our documentation contains answers to most frequently asked questions and much more.",
'doc2' => "Are you looking for an instant answer to your question or a quick solution for your problem, our Knowledgebase is where you will likely find it.",
'documentation' => "Documentation",
diff --git a/src/resources/themes/default/pages/support.blade.php b/src/resources/themes/default/pages/support.blade.php
--- a/src/resources/themes/default/pages/support.blade.php
+++ b/src/resources/themes/default/pages/support.blade.php
@@ -1,13 +1,40 @@
-<div id="support" class="card">
- <div class="card-body">
- <h3 class="card-title text-center">@lang('theme::support.documentation')</h3>
- <p class="card-text">
- @lang('theme::support.doc1')
- <br><br>
- @lang('theme::support.doc2')
- </p>
- </div>
- <div class="card-footer text-center">
- <a href="https://kb.kolab.org" class="btn btn-primary">@lang('theme::support.search-kb')</a>
+@php($support_email = \config('app.support_email'))
+
+<div id="support">
+@isset($support_email)
+ <div class="row row-cols-1 row-cols-md-2 g-2">
+ <div class="col">
+@endisset
+ <div class="card">
+ <div class="card-body">
+ <h3 class="card-title text-center">@lang('theme::support.documentation')</h3>
+ <p class="card-text">
+ @lang('theme::support.doc1')
+ <br/><br/>
+ @lang('theme::support.doc2')
+ </p>
+ </div>
+ <div class="card-footer text-center">
+ <a href="https://kb.kolab.org" class="btn btn-primary">@lang('theme::support.search-kb')</a>
+ </div>
+ </div>
+@isset($support_email)
+ </div>
+ <div class="col">
+ <div class="card">
+ <div class="card-body">
+ <h3 class="card-title text-center">@lang('theme::support.title')</h3>
+ <p class="card-text">
+ @lang('theme::support.text1')
+ <br/><br/>
+ @lang('theme::support.text2', ['site' => config('app.name')])
+ </p>
+ </div>
+ <div class="card-footer text-center">
+ <a href="/support/contact" class="btn btn-primary">@lang('theme::support.contact')</a>
+ </div>
+ </div>
+ </div>
+@endisset
</div>
</div>
diff --git a/src/tests/Browser/SupportTest.php b/src/tests/Browser/SupportTest.php
--- a/src/tests/Browser/SupportTest.php
+++ b/src/tests/Browser/SupportTest.php
@@ -21,9 +21,12 @@
$browser->clickMenuItem('support');
})
->waitFor('#support')
- ->assertSeeIn('.card-title', 'Contact Support')
- ->assertSeeIn('a.btn-primary', 'Contact Support')
- ->click('a.btn-primary')
+ ->assertElementsCount('.card-title', 2)
+ ->with('.row .col:last-child', function ($card) {
+ $card->assertSeeIn('.card-title', 'Contact Support')
+ ->assertSeeIn('.btn-primary', 'Contact Support')
+ ->click('.btn-primary');
+ })
->with(new Dialog('#support-dialog'), function (Browser $browser) {
$browser->assertSeeIn('@title', 'Contact Support')
->assertFocused('#support-user')
@@ -39,7 +42,9 @@
->click('@button-cancel');
})
->assertMissing('#support-dialog')
- ->click('a.btn-primary')
+ ->with('.row .col:last-child', function ($card) {
+ $card->click('.btn-primary');
+ })
->with(new Dialog('#support-dialog'), function (Browser $browser) {
$browser->assertSeeIn('@title', 'Contact Support')
->assertFocused('#support-user')
@@ -48,9 +53,26 @@
->assertValue('#support-body', 'Body')
->click('@button-action');
})
- // Note: This line assumes SUPPORT_EMAIL is not set in config
- ->assertToast(Toast::TYPE_ERROR, 'Failed to submit the support request')
->assertVisible('#support-dialog');
});
}
+
+ /**
+ * Test disabled support contact form
+ */
+ //public function testNoSupportForm(): void
+ //{
+ // //FIXME setting support_email dymically doesn't seem to have an effect
+ // \config(['app.support_email' => null]);
+ // $this->browse(function (Browser $browser) {
+ // $browser->visit('/')
+ // ->within(new Menu(), function ($browser) {
+ // $browser->clickMenuItem('support');
+ // })
+ // ->waitFor('#support')
+ // ->assertElementsCount('.card-title', 1)
+ // ->assertSeeIn('.card-title', 'Documentation')
+ // ->assertSeeIn('.btn-primary', 'Search Knowledgebase');
+ // });
+ //}
}

File Metadata

Mime Type
text/plain
Expires
Thu, Apr 2, 8:51 PM (11 h, 29 m ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18820801
Default Alt Text
D4229.1775163070.diff (6 KB)

Event Timeline