From 8e92ec3965667ab393c0138dcf27662debb8bac0 Mon Sep 17 00:00:00 2001 From: franknstayn Date: Thu, 19 Aug 2021 23:32:36 +0800 Subject: [PATCH] added contact us page --- .../teamstore/TeamStoreController.php | 62 +++++++++++++++++++ app/Http/routes.php | 2 + resources/views/contact.blade.php | 32 +++++++++- resources/views/emails/contact_us.blade.php | 25 ++++++++ 4 files changed, 118 insertions(+), 3 deletions(-) create mode 100644 resources/views/emails/contact_us.blade.php diff --git a/app/Http/Controllers/teamstore/TeamStoreController.php b/app/Http/Controllers/teamstore/TeamStoreController.php index 82395e0..b9b8203 100755 --- a/app/Http/Controllers/teamstore/TeamStoreController.php +++ b/app/Http/Controllers/teamstore/TeamStoreController.php @@ -14,11 +14,16 @@ use App\Models\user\UserModel; use Illuminate\Support\Facades\Mail; use Analytics; use App\Models\TemplatesModel; +use App\Traits\CaptchaTrait; use Illuminate\Support\Facades\Session; +use Illuminate\Support\Facades\Validator; +use Illuminate\Support\Facades\Redirect; class TeamStoreController extends Controller { + use CaptchaTrait; + public function index(Request $request, $teamStoreURL) { // var_dump($teamStoreURL); @@ -819,4 +824,61 @@ class TeamStoreController extends Controller return view('merchbay.templates') ->with('row', $data); } + + public function contactUsSend(Request $request) { + $post = $request->all(); + + $post['captcha'] = $this->captchaCheck(); + + $validator = Validator::make( + $post, + [ + 'emailAddress' => 'required', + 'fullname' => 'required', + 'message' => 'required', + 'g-recaptcha-response' => 'required', + 'captcha' => 'required|min:1' + ], + [ + 'g-recaptcha-response.required' => 'Captcha is required', + 'captcha.min' => 'Wrong captcha, please try again.' + ] + ); + + + if ($validator->fails()) { + $errors = ""; + foreach ($validator->errors()->all() as $error) { + $errors .= "
  • " . $error . "
  • "; + } + $message = ' + '; + Session::flash('contactUserError', $message); + return Redirect::back(); + } + + $data = array( + 'name' => $post['fullname'], + 'emailAddress' => $post['emailAddress'], + 'msg' => $post['message'], + 'receiver' => 'orders@merchbay.com', + 'email_cc' => ['webmaster@merchbay.com','angelo@merchbay.com'], + 'subject' => 'Merchbay - Contact Us Page', + ); + + Mail::send('emails.contact_us', $data, function ($msg) use ($data) { + $msg->from('support@merchbay.com', 'Merchbay Contact Us Page'); + $msg->bcc($data['email_cc'], 'Merchbay Contact Us Page'); + $msg->to($data['receiver'])->subject($data['subject']); + }); + + $contactUsUrl = url('/contact-us'); + echo ''; + } } \ No newline at end of file diff --git a/app/Http/routes.php b/app/Http/routes.php index 5cf4f94..ddb2ad1 100755 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -40,6 +40,8 @@ Route::post('/custom/register', 'CustomAuthController@postRegister'); Route::get('cart', ['as' => 'cart', 'uses' => 'teamstore\TeamStoreController@cart']); Route::get('/checkout', 'teamstore\TeamStoreController@checkout'); Route::get('/contact-us', 'teamstore\TeamStoreController@contact'); +Route::post('/contact-us/send', 'teamstore\TeamStoreController@contactUsSend'); + Route::get('/mail', 'teamstore\TeamStoreController@mail'); Route::get('/designer/{templateid}', 'designer\DesignerController@index'); diff --git a/resources/views/contact.blade.php b/resources/views/contact.blade.php index c90089f..5314753 100755 --- a/resources/views/contact.blade.php +++ b/resources/views/contact.blade.php @@ -20,15 +20,41 @@
    -
    Email Address:
    + +
    Address:
    +

    1281 Humbracht Circle Suite J Bartlett, Illinois 60103

    +
    + {{--
    Email Address:

    orders@merchbay.com


    Contact Number:

    630 213 1500


    Address:
    -

    1281 Humbracht Circle Suite J Bartlett, Illinois 60103

    - +

    1281 Humbracht Circle Suite J Bartlett, Illinois 60103

    --}} + @if(Session::has('contactUserError')) + {!! Session::get('contactUserError') !!} + @endif +
    +
    + + + +
    We'll never share your email with anyone else.
    +
    +
    + + +
    +
    + + +
    +
    +
    +
    + +
    diff --git a/resources/views/emails/contact_us.blade.php b/resources/views/emails/contact_us.blade.php new file mode 100644 index 0000000..d8f6068 --- /dev/null +++ b/resources/views/emails/contact_us.blade.php @@ -0,0 +1,25 @@ + + + + + + + Merchbay | Contact Us + + + +

    Merchbay - Contact Page

    + +

    + Name
    +

    + +

    + Email Address
    +

    +

    + Message
    +

    + + + \ No newline at end of file