From 36b37f3c3a5ea42c15d31a1623fb9e0e099d1a66 Mon Sep 17 00:00:00 2001 From: tamara Date: Sat, 13 Aug 2022 19:45:51 +0300 Subject: [PATCH 01/11] create message Tabel&Model --- app/Models/Messages.php | 11 ++++++ ...022_08_12_151510_create_messages_table.php | 35 +++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 app/Models/Messages.php create mode 100644 database/migrations/2022_08_12_151510_create_messages_table.php diff --git a/app/Models/Messages.php b/app/Models/Messages.php new file mode 100644 index 0000000..49a0457 --- /dev/null +++ b/app/Models/Messages.php @@ -0,0 +1,11 @@ +id(); + $table->string('name'); + $table->string('email'); + $table->text('content'); + $table->softDeletes(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('messages'); + } +}; From 899721ca5a5be00f53f7e2e0c12d461293e27a93 Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 14 Aug 2022 16:50:18 +0300 Subject: [PATCH 02/11] add phone --- .../migrations/2022_08_12_151510_create_messages_table.php | 1 + package-lock.json | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/database/migrations/2022_08_12_151510_create_messages_table.php b/database/migrations/2022_08_12_151510_create_messages_table.php index 5f7b807..a066786 100644 --- a/database/migrations/2022_08_12_151510_create_messages_table.php +++ b/database/migrations/2022_08_12_151510_create_messages_table.php @@ -17,6 +17,7 @@ public function up() $table->id(); $table->string('name'); $table->string('email'); + $table->string('phone'); $table->text('content'); $table->softDeletes(); $table->timestamps(); diff --git a/package-lock.json b/package-lock.json index 2cd1680..7e436fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1203,7 +1203,8 @@ "version": "1.78.1", "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-1.78.1.tgz", "integrity": "sha512-QT/94Hufvzn4PxsEyN9NTh96XmNaGGgMh7sKcBZ2216pE9B+Ala98KpdNwTKKBlEvRvHw9y14zW4qFYzxGOhZw==", - "dev": true + "dev": true, + "requires": {} }, "adjust-sourcemap-loader": { "version": "4.0.0", @@ -1263,7 +1264,8 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.1.3.tgz", "integrity": "sha512-fcQztozJ8jToQWXxVuEyXWW+dSo8AiXWKwiSSrKWsRB/Qt+Ewwza+JWoLKiTuQLaEPhdNAJ7+Dosc9DOIqNy7Q==", - "dev": true + "dev": true, + "requires": {} }, "braces": { "version": "3.0.2", From bdcaec875e149882b9a19b1ea4d3fa6800dca18c Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 14 Aug 2022 17:25:48 +0300 Subject: [PATCH 03/11] edit model name --- app/Models/Message.php | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 app/Models/Message.php diff --git a/app/Models/Message.php b/app/Models/Message.php new file mode 100644 index 0000000..b9f7393 --- /dev/null +++ b/app/Models/Message.php @@ -0,0 +1,11 @@ + Date: Sun, 14 Aug 2022 17:36:04 +0300 Subject: [PATCH 04/11] edit model name (Message)& delete the old one --- app/Models/{Messages.php => Message.php} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename app/Models/{Messages.php => Message.php} (83%) diff --git a/app/Models/Messages.php b/app/Models/Message.php similarity index 83% rename from app/Models/Messages.php rename to app/Models/Message.php index 49a0457..b9f7393 100644 --- a/app/Models/Messages.php +++ b/app/Models/Message.php @@ -5,7 +5,7 @@ use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; -class Messages extends Model +class Message extends Model { use HasFactory; } From 12ec73e5c2cb4033de5f5fceefc666556a5f1c9b Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 14 Aug 2022 17:42:36 +0300 Subject: [PATCH 05/11] vendor pint --- app/Http/Controllers/Auth/RegisterController.php | 2 +- app/Http/Controllers/HomeController.php | 2 -- app/Http/Controllers/ProfileController.php | 2 +- app/Http/Requests/ProfileUpdateRequest.php | 6 +++--- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php index ed1a5e0..69efd5f 100644 --- a/app/Http/Controllers/Auth/RegisterController.php +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -3,8 +3,8 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; -use App\Providers\RouteServiceProvider; use App\Models\User; +use App\Providers\RouteServiceProvider; use Illuminate\Foundation\Auth\RegistersUsers; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Validator; diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 7cbc2c3..6c50be3 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -2,8 +2,6 @@ namespace App\Http\Controllers; -use Illuminate\Http\Request; - class HomeController extends Controller { /** diff --git a/app/Http/Controllers/ProfileController.php b/app/Http/Controllers/ProfileController.php index 73ce775..d7a3cce 100644 --- a/app/Http/Controllers/ProfileController.php +++ b/app/Http/Controllers/ProfileController.php @@ -2,8 +2,8 @@ namespace App\Http\Controllers; -use Illuminate\Support\Facades\Hash; use App\Http\Requests\ProfileUpdateRequest; +use Illuminate\Support\Facades\Hash; class ProfileController extends Controller { diff --git a/app/Http/Requests/ProfileUpdateRequest.php b/app/Http/Requests/ProfileUpdateRequest.php index 52a7583..ec2dc83 100644 --- a/app/Http/Requests/ProfileUpdateRequest.php +++ b/app/Http/Requests/ProfileUpdateRequest.php @@ -2,9 +2,9 @@ namespace App\Http\Requests; -use Illuminate\Validation\Rule; -use Illuminate\Support\Facades\Auth; use Illuminate\Foundation\Http\FormRequest; +use Illuminate\Support\Facades\Auth; +use Illuminate\Validation\Rule; class ProfileUpdateRequest extends FormRequest { @@ -28,4 +28,4 @@ protected function prepareForValidation() $this->request->remove('password'); } } -} \ No newline at end of file +} From a3505da0e158755d83822b2b5787b5b4b47a9e93 Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 14 Aug 2022 18:38:20 +0300 Subject: [PATCH 06/11] add MessageController& routes --- app/Http/Controllers/MessageController.php | 46 ++++++++++++++++++++++ routes/web.php | 9 ++++- 2 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 app/Http/Controllers/MessageController.php diff --git a/app/Http/Controllers/MessageController.php b/app/Http/Controllers/MessageController.php new file mode 100644 index 0000000..865e494 --- /dev/null +++ b/app/Http/Controllers/MessageController.php @@ -0,0 +1,46 @@ +validate(['name' => 'required|string|min:3|max:255', + 'email' => 'required|email', + 'phone' => 'required|starts_with:9639|digits_between:12,12', + 'content' => 'required|string|min:5', + ]); + $message = new Message(); + $message->name = $request->name; + $message->email = $request->email; + $message->phone = $request->phone; + $message->content = $request->content; + $message->save(); + + return redirect(''); + } + + public function destroy(Message $message) + { + $message->delete(); + $message = Message::all(); + + return view('messages.index', compact('messages')); + } +} diff --git a/routes/web.php b/routes/web.php index b3acaba..8e4ddeb 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,5 +1,6 @@ name('home'); +Route::post('/contact-us', [MessageController::class, 'store'])->name('messages.store'); + + Route::middleware('auth')->group(function () { Route::view('about', 'about')->name('about'); - Route::get('users', [\App\Http\Controllers\UserController::class, 'index'])->name('users.index'); - Route::get('profile', [\App\Http\Controllers\ProfileController::class, 'show'])->name('profile.show'); Route::put('profile', [\App\Http\Controllers\ProfileController::class, 'update'])->name('profile.update'); + Route::get('messages', [MessageController::class, 'index'])->name('messages.index'); + Route::get('messages/{message}', [MessageController::class, 'show'])->name('messages.show'); + Route::delete('messages/{message}', [MessageController::class, 'destroy'])->name('messages.destroy'); }); From 4593ca5cc371d6c63ee67be1e86fa8c428b1e01e Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 21 Aug 2022 09:48:13 +0300 Subject: [PATCH 07/11] fix the route --- app/Http/Controllers/MessageController.php | 4 ++-- routes/web.php | 9 +++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/Http/Controllers/MessageController.php b/app/Http/Controllers/MessageController.php index 865e494..cc5e84f 100644 --- a/app/Http/Controllers/MessageController.php +++ b/app/Http/Controllers/MessageController.php @@ -11,12 +11,12 @@ public function index() { $messages = Message::all(); - return view('message.index', compact('messages')); + return view('messages.index', compact('messages')); } public function show(Message $message) { - return view('message.show', compact('message')); + return view('messages.show', compact('message')); } public function store(Request $request) diff --git a/routes/web.php b/routes/web.php index 8e4ddeb..50f7d12 100644 --- a/routes/web.php +++ b/routes/web.php @@ -3,6 +3,7 @@ use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Route; + /* |-------------------------------------------------------------------------- | Web Routes @@ -21,7 +22,7 @@ Auth::routes(); Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home'); -Route::post('/contact-us', [MessageController::class, 'store'])->name('messages.store'); +Route::post('/contact-us', [\App\Http\Controllers\MessageController::class, 'store'])->name('messages.store'); @@ -30,7 +31,7 @@ Route::get('users', [\App\Http\Controllers\UserController::class, 'index'])->name('users.index'); Route::get('profile', [\App\Http\Controllers\ProfileController::class, 'show'])->name('profile.show'); Route::put('profile', [\App\Http\Controllers\ProfileController::class, 'update'])->name('profile.update'); - Route::get('messages', [MessageController::class, 'index'])->name('messages.index'); - Route::get('messages/{message}', [MessageController::class, 'show'])->name('messages.show'); - Route::delete('messages/{message}', [MessageController::class, 'destroy'])->name('messages.destroy'); + Route::get('messages', [\App\Http\Controllers\MessageController::class, 'index'])->name('messages.index'); + Route::get('messages/{message}', [\App\Http\Controllers\MessageController::class, 'show'])->name('messages.show'); + Route::delete('messages/{message}', [\App\Http\Controllers\MessageController::class, 'destroy'])->name('messages.destroy'); }); From 657e957be444ff460cea8ccb31535eea6f47fb4e Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 21 Aug 2022 17:19:13 +0300 Subject: [PATCH 08/11] add messages views & edit controller --- app/Http/Controllers/MessageController.php | 4 +- resources/views/layouts/navigation.blade.php | 21 ++++++++- resources/views/messages/index.blade.php | 46 ++++++++++++++++++++ resources/views/messages/show.blade.php | 20 +++++++++ 4 files changed, 87 insertions(+), 4 deletions(-) create mode 100644 resources/views/messages/index.blade.php create mode 100644 resources/views/messages/show.blade.php diff --git a/app/Http/Controllers/MessageController.php b/app/Http/Controllers/MessageController.php index cc5e84f..ad28026 100644 --- a/app/Http/Controllers/MessageController.php +++ b/app/Http/Controllers/MessageController.php @@ -33,7 +33,7 @@ public function store(Request $request) $message->content = $request->content; $message->save(); - return redirect(''); + return redirect(route('messages.index')); } public function destroy(Message $message) @@ -41,6 +41,6 @@ public function destroy(Message $message) $message->delete(); $message = Message::all(); - return view('messages.index', compact('messages')); + return redirect(route('messages.index')); } } diff --git a/resources/views/layouts/navigation.blade.php b/resources/views/layouts/navigation.blade.php index 64e24a4..1a3cd2a 100644 --- a/resources/views/layouts/navigation.blade.php +++ b/resources/views/layouts/navigation.blade.php @@ -3,7 +3,7 @@ diff --git a/resources/views/messages/index.blade.php b/resources/views/messages/index.blade.php index f9f3a3b..df6953c 100644 --- a/resources/views/messages/index.blade.php +++ b/resources/views/messages/index.blade.php @@ -11,36 +11,43 @@
- - - - - - - - - - - - @foreach ($messages as $message) - - - - - - - - @endforeach - -
idnamephonereceived at
{{$message->id}}{{$message->name}}{{$message->phone}}{{$message->created_at}} -
-
- @csrf @method('DELETE') - -
-
-
+ + + + + + + + + + + + @foreach ($messages as $message) + + + + + + + + @endforeach + +
idnamephonereceived at
{{ $message->id }}{{ $message->name }}{{ $message->phone }}{{ $message->created_at }} +
+
+ @csrf @method('DELETE') + +
+
+
+ {{ $messages->links() }}
@endsection + + + diff --git a/resources/views/messages/show.blade.php b/resources/views/messages/show.blade.php index eb7a0dd..1d11a72 100644 --- a/resources/views/messages/show.blade.php +++ b/resources/views/messages/show.blade.php @@ -7,14 +7,16 @@
-

{{ $message->name }}

-

-

Email: {{ $message->email }}

-

Phone: {{ $message->phone }}


-

Message content:

{{ $message->content }}

+

{{ $message->name }}

+

+

Email: {{ $message->email }}

+

Phone: {{ $message->phone }}

+
+

Message content:

+

{{ $message->content }}

-
+
@endsection From 400681ab260113744a28df474848f99326e2b092 Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 28 Aug 2022 12:18:15 +0300 Subject: [PATCH 10/11] add fillable --- app/Models/Message.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Models/Message.php b/app/Models/Message.php index b9f7393..204afeb 100644 --- a/app/Models/Message.php +++ b/app/Models/Message.php @@ -8,4 +8,5 @@ class Message extends Model { use HasFactory; + protected $fillable = ['name', 'email', 'content']; } From e022ca713afe28fe5b030e9f6306026925722090 Mon Sep 17 00:00:00 2001 From: tamara Date: Sun, 28 Aug 2022 12:30:56 +0300 Subject: [PATCH 11/11] fix paginate num --- app/Http/Controllers/MessageController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/MessageController.php b/app/Http/Controllers/MessageController.php index 2bde737..2fc348c 100644 --- a/app/Http/Controllers/MessageController.php +++ b/app/Http/Controllers/MessageController.php @@ -9,7 +9,7 @@ class MessageController extends Controller { public function index() { - $messages = Message::paginate(3); + $messages = Message::paginate(15); $messages->sortByDesc('id'); return view('messages.index', compact('messages')); }