diff --git a/app/Http/Controllers/ClientController.php b/app/Http/Controllers/ClientController.php index cbebc98..9436fcd 100644 --- a/app/Http/Controllers/ClientController.php +++ b/app/Http/Controllers/ClientController.php @@ -2,10 +2,12 @@ namespace App\Http\Controllers; +use App\Http\Requests\ContactSubmitRequest; use App\Models\Attachment; use App\Models\Category; use App\Models\Clip; use App\Models\Comment; +use App\Models\Contact; use App\Models\Customer; use App\Models\Gallery; use App\Models\Group; @@ -411,6 +413,24 @@ class ClientController extends Controller $products = Product::whereIn('id', $ids)->where('status', 1)->get(); return view('client.default-list', compact('area', 'products', 'title', 'subtitle')); } + public function contact() + { + $area = 'contact-us'; + $title = __("Contact us"); + $subtitle = ''; + return view('client.default-list', compact('area', 'title', 'subtitle')); + } + public function sendContact(ContactSubmitRequest $request) + { + $con = new Contact(); + $con->name = $request->full_name; + $con->email = $request->email; + $con->mobile = $request->phone; + $con->subject = $request->subject; + $con->body = $request->bodya; + $con->save(); + return redirect()->back()->with(['message' => __('Your message has been successfully sent.')]); + } public function signOut() diff --git a/app/Http/Requests/ContactSubmitRequest.php b/app/Http/Requests/ContactSubmitRequest.php new file mode 100644 index 0000000..9f2cbd0 --- /dev/null +++ b/app/Http/Requests/ContactSubmitRequest.php @@ -0,0 +1,32 @@ +|string> + */ + public function rules(): array + { + return [ + 'full_name' => ['required', 'string', 'max:255', 'min:3'], + 'phone' => ['required', 'string', 'max:15', 'min:8'], + 'subject' => ['nullable', 'string', 'max:255', 'min:4'], + 'email' => ['required', 'email', 'max:255', 'min:4'], + 'bodya' => ['required', 'string', 'max:4048', 'min:15'], + ]; + } +} diff --git a/app/Models/Area.php b/app/Models/Area.php index 8431430..71d8716 100644 --- a/app/Models/Area.php +++ b/app/Models/Area.php @@ -18,6 +18,7 @@ class Area extends Model // 'categories_page', 'category', 'comments', + 'contact', 'clip', 'clips', 'clips_page', diff --git a/database/seeders/AreaSeeder.php b/database/seeders/AreaSeeder.php index 12c0013..9e193ad 100644 --- a/database/seeders/AreaSeeder.php +++ b/database/seeders/AreaSeeder.php @@ -45,7 +45,7 @@ class AreaSeeder extends Seeder [ 'name' => 'default_footer', 'valid_segments' => json_encode( - ["footer", "other", "ads" , "groups"] + ["footer", "other", "ads", "groups"] ), 'max' => 2, 'preview' => null, @@ -229,7 +229,7 @@ class AreaSeeder extends Seeder "parallax", "other", "register", "ads"] ), 'max' => 6, - 'preview' => 'client.register', + 'preview' => 'client.sign-up', 'icon' => 'ri-user-add-line', ], [ @@ -261,6 +261,16 @@ class AreaSeeder extends Seeder 'preview' => null, 'icon' => 'ri-scales-3-line', ], + [ + 'name' => 'contact-us', + 'valid_segments' => json_encode( + ["top", "header", "footer", "menu", + "parallax", "other", "contact", "ads", "index"] + ), + 'max' => 4, + 'preview' => null, + 'icon' => 'ri-mail-open-line', + ], ]; foreach ($areas as $area) { @@ -270,7 +280,7 @@ class AreaSeeder extends Seeder $a->valid_segments = $area['valid_segments']; $a->icon = $area['icon']; $a->preview = $area['preview']; - if ($area['name'] == 'index'){ + if ($area['name'] == 'index') { $a->use_default = false; } $a->save(); diff --git a/database/seeders/PartSeeder.php b/database/seeders/PartSeeder.php index eca39b4..4ec0f27 100644 --- a/database/seeders/PartSeeder.php +++ b/database/seeders/PartSeeder.php @@ -257,6 +257,15 @@ class PartSeeder extends Seeder $part->sort = 1; $part->save(); + // ------------------------------------------------------------- + + $part = new Part(); + $part->segment = 'contact'; + $part->part = 'MeloContact'; + $part->area_id = Area::where('name', 'contact-us')->first()->id; + $part->sort = 1; + $part->save(); + } } diff --git a/resources/js/client-custom/safeForm.js b/resources/js/client-custom/safeForm.js index 6a6514d..dd90f94 100644 --- a/resources/js/client-custom/safeForm.js +++ b/resources/js/client-custom/safeForm.js @@ -1,6 +1,7 @@ window.addEventListener('load',function () { setTimeout(()=>{ - document.querySelectorAll('.safe-from')?.forEach(function (el) { + document.querySelectorAll('.safe-form')?.forEach(function (el) { + const url = el.querySelector('.safe-url').getAttribute('data-url'); el.setAttribute('action',url); }) diff --git a/resources/js/client.js b/resources/js/client.js index cbdbc41..3bfcc48 100644 --- a/resources/js/client.js +++ b/resources/js/client.js @@ -37,3 +37,5 @@ import "../views/segments/login/LoginPatternBg/LoginPatternBg.js"; import "../views/segments/customer/AvisaCustomer/AvisaCustomer.js"; import "../views/segments/attachments_page/DenaAttachList/DenaAttachList.js"; import "../views/segments/attachment/AttachmentWithPreview/AttachmentWithPreview.js"; +import "../views/segments/contact/MeloContact/MeloContact.js"; +import "../views/segments/index/InlineMap/InlineMap.js"; diff --git a/resources/sass/client.scss b/resources/sass/client.scss index ed562ca..12f4ac8 100644 --- a/resources/sass/client.scss +++ b/resources/sass/client.scss @@ -48,3 +48,5 @@ $xshop-shadow:2px 2px 4px #777777; @import "../views/segments/customer/AvisaCustomer/AvisaCustomer"; @import "../views/segments/attachments_page/DenaAttachList/DenaAttachList"; @import "../views/segments/attachment/AttachmentWithPreview/AttachmentWithPreview"; +@import "../views/segments/contact/MeloContact/MeloContact"; +@import "../views/segments/index/InlineMap/InlineMap"; diff --git a/resources/sass/panel/_fix.scss b/resources/sass/panel/_fix.scss index 58a30d1..eaa6fb7 100644 --- a/resources/sass/panel/_fix.scss +++ b/resources/sass/panel/_fix.scss @@ -46,7 +46,7 @@ main{ } a,a:visited{ - color: #cb00a5; + color: white; &:hover{ color: #ff0067; } diff --git a/resources/views/segments/card/NsCard/NsCard.blade.php b/resources/views/segments/card/NsCard/NsCard.blade.php index 150b5c7..84a2c6e 100644 --- a/resources/views/segments/card/NsCard/NsCard.blade.php +++ b/resources/views/segments/card/NsCard/NsCard.blade.php @@ -6,7 +6,7 @@ {{__("There is nothing added to card!")}} @else {{-- count 0--}} -