From 1ba6a147ae63e8146b0888b1305b2815c8a87cd3 Mon Sep 17 00:00:00 2001 From: gop20 <gop20@inf.ufpr.br> Date: Mon, 8 Nov 2021 14:43:30 -0300 Subject: [PATCH] corrigido bug na ordem das imagens na galeria --- images/usr_avatar.png | Bin 0 -> 18197 bytes remember_laravel/.env.example | 2 +- .../Http/Controllers/GalleryController.php | 6 +-- .../app/Http/Controllers/HomeController.php | 6 +-- remember_laravel/app/ImageYears.php | 19 +++++++++ ..._10_26_174858_create_image_years_table.php | 32 ++++++++++++++++ .../2021_10_26_180313_create_images_table.php | 36 ++++++++++++++++++ remember_laravel/public/css/style.css | 10 +++++ .../views/dashboard/entrevista/show.blade.php | 4 +- .../views/frontend/interviews/index.blade.php | 6 +-- .../views/frontend/interviews/show.blade.php | 6 +-- 11 files changed, 112 insertions(+), 15 deletions(-) create mode 100644 images/usr_avatar.png create mode 100644 remember_laravel/app/ImageYears.php create mode 100644 remember_laravel/database/migrations/2021_10_26_174858_create_image_years_table.php create mode 100644 remember_laravel/database/migrations/2021_10_26_180313_create_images_table.php diff --git a/images/usr_avatar.png b/images/usr_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..7eed5af69f73d2b9e491ca736f38c648070c6c6f GIT binary patch literal 18197 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 E0MUF_6aWAK literal 0 HcmV?d00001 diff --git a/remember_laravel/.env.example b/remember_laravel/.env.example index cdf8d26..1ae0f8a 100755 --- a/remember_laravel/.env.example +++ b/remember_laravel/.env.example @@ -1,4 +1,4 @@ -APP_NAME=Laravel +APP_NAME="Remember PET" APP_ENV=local APP_KEY= APP_DEBUG=true diff --git a/remember_laravel/app/Http/Controllers/GalleryController.php b/remember_laravel/app/Http/Controllers/GalleryController.php index 7b438fe..c4255c4 100755 --- a/remember_laravel/app/Http/Controllers/GalleryController.php +++ b/remember_laravel/app/Http/Controllers/GalleryController.php @@ -16,12 +16,12 @@ class GalleryController extends Controller { $search = request()->query('search'); if($search){ // testa se ha um request de search - $images = Image::where('title', 'LIKE', '%' . $search . '%')->orderBy('title')->paginate(10); + $images = Image::where('title', 'LIKE', '%' . $search . '%')->orderBy('year', 'desc')->paginate(4); } else{ - $images = Image::paginate(10); + $images = Image::orderBy('year', 'desc')->paginate(4); } - $imageYears = ImageYears::orderBy('year')->get(); + $imageYears = ImageYears::orderBy('year', 'desc')->get(); return view('dashboard.galeria.index')->with(['images' => $images, 'imageYears' => $imageYears, 'search' => $search]); } diff --git a/remember_laravel/app/Http/Controllers/HomeController.php b/remember_laravel/app/Http/Controllers/HomeController.php index e65fcfe..f3ef284 100755 --- a/remember_laravel/app/Http/Controllers/HomeController.php +++ b/remember_laravel/app/Http/Controllers/HomeController.php @@ -51,12 +51,12 @@ class HomeController extends Controller { $search = request()->query('search'); if($search){ // testa se ha um request de search - $images = Image::where('title', 'LIKE', '%' . $search . '%')->orderBy('title')->paginate(10); + $images = Image::where('title', 'LIKE', '%' . $search . '%')->orderBy('year', 'desc')->paginate(4); } else{ - $images = Image::orderBy('title')->paginate(10); + $images = Image::orderBy('year', 'desc')->paginate(4); } - $imageYears = ImageYears::orderBy('year')->get(); + $imageYears = ImageYears::orderBy('year', 'desc')->get(); return view('frontend.gallery.index')->with(['images' => $images, 'imageYears' => $imageYears, 'frase' => $this->frase(), 'search' => $search]); } diff --git a/remember_laravel/app/ImageYears.php b/remember_laravel/app/ImageYears.php new file mode 100644 index 0000000..f89ab09 --- /dev/null +++ b/remember_laravel/app/ImageYears.php @@ -0,0 +1,19 @@ +<?php + +namespace App; + +use Illuminate\Database\Eloquent\Model; + +class ImageYears extends Model +{ + protected $primaryKey = 'id'; + + protected $fillable = [ + 'year' + ]; + + public function images() + { + return $this->hasMany(Image::class, 'year'); + } +} diff --git a/remember_laravel/database/migrations/2021_10_26_174858_create_image_years_table.php b/remember_laravel/database/migrations/2021_10_26_174858_create_image_years_table.php new file mode 100644 index 0000000..c7d8f08 --- /dev/null +++ b/remember_laravel/database/migrations/2021_10_26_174858_create_image_years_table.php @@ -0,0 +1,32 @@ +<?php + +use Illuminate\Support\Facades\Schema; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Database\Migrations\Migration; + +class CreateImageYearsTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('image_years', function (Blueprint $table) { + $table->increments('id'); + $table->unsignedInteger('year'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('image_years'); + } +} diff --git a/remember_laravel/database/migrations/2021_10_26_180313_create_images_table.php b/remember_laravel/database/migrations/2021_10_26_180313_create_images_table.php new file mode 100644 index 0000000..d28399c --- /dev/null +++ b/remember_laravel/database/migrations/2021_10_26_180313_create_images_table.php @@ -0,0 +1,36 @@ +<?php + +use Illuminate\Support\Facades\Schema; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Database\Migrations\Migration; + +class CreateImagesTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('images', function (Blueprint $table) { + $table->increments('id'); + $table->string('title'); + $table->text('description'); + $table->string('path'); + $table->unsignedInteger('year'); + $table->timestamps(); + $table->foreign('year')->references('year')->on('image_years')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('images'); + } +} diff --git a/remember_laravel/public/css/style.css b/remember_laravel/public/css/style.css index a4888e8..6e06c18 100755 --- a/remember_laravel/public/css/style.css +++ b/remember_laravel/public/css/style.css @@ -243,3 +243,13 @@ textarea { padding-top:30px; padding-bottom: 30px; } + +.int_img_max_i{ + max-height: 350px !important; + max-width: 650px !important; +} + +.int_img_max_s{ + max-height: 600px !important; + max-width: 1000px !important; +} diff --git a/remember_laravel/resources/views/dashboard/entrevista/show.blade.php b/remember_laravel/resources/views/dashboard/entrevista/show.blade.php index 947494e..bb9b5c8 100755 --- a/remember_laravel/resources/views/dashboard/entrevista/show.blade.php +++ b/remember_laravel/resources/views/dashboard/entrevista/show.blade.php @@ -30,8 +30,8 @@ <div class="card-box"> <h4 class="m-t-0 m-b-10 header-title" align="center">{{ $interview->name }}</h4> <div class="text-center" style="margin-bottom: 15px"> - <img class="img-fluid rounded mb-5 mb-md-0" src="{{ asset('storage/images/entrevistas/' . $interview->image_path) }}" - height="500" width="auto" alt="{{ $interview->name }}"> + <img class="img-fluid rounded mb-5 mb-md-0" style="max-width: 1000px" src="{{ asset('storage/images/entrevistas/' . $interview->image_path) }}" + height="500px" width="auto" alt="{{ $interview->name }}"> </div> <p class="m-b-40">{{ $interview->sumary }}</p> <p class="m-b-30">{!! $interview->content !!}</p> diff --git a/remember_laravel/resources/views/frontend/interviews/index.blade.php b/remember_laravel/resources/views/frontend/interviews/index.blade.php index 2176c97..e20e4c0 100755 --- a/remember_laravel/resources/views/frontend/interviews/index.blade.php +++ b/remember_laravel/resources/views/frontend/interviews/index.blade.php @@ -22,12 +22,12 @@ </div> @forelse($interviews as $interview) - <!-- Project One --> + <!-- entrevista --> <div class="row"> <div class="col-md-7 text-center"> <a href="#"> - <img class="img-fluid rounded mb-3 mb-md-0" src="{{ asset('storage/images/entrevistas/' . $interview->image_path) }}" - height="300" width="auto" alt="{{ $interview->name }}"> + <img class="img-fluid rounded mb-3 mb-md-0 int_img_max_i" src="{{ asset('storage/images/entrevistas/' . $interview->image_path) }}" + height="350px" width="auto" alt="{{ $interview->name }}"> </a> </div> <div class="col-md-5"> diff --git a/remember_laravel/resources/views/frontend/interviews/show.blade.php b/remember_laravel/resources/views/frontend/interviews/show.blade.php index f0fb082..19ba9b8 100755 --- a/remember_laravel/resources/views/frontend/interviews/show.blade.php +++ b/remember_laravel/resources/views/frontend/interviews/show.blade.php @@ -6,12 +6,12 @@ <section class="gallery-block cards-gallery"> <div class="container"> - <div class="heading"> + <div class="heading text-center"> <h1 class="text-uppercase">{{ $interview->name }}</h1> </div> <div class="text-center" style="margin-bottom: 15px"> - <img class="img-fluid rounded mb-5 mb-md-0" src="{{ asset('storage/images/entrevistas/' . $interview->image_path) }}" - height="700" width="auto" alt="{{ $interview->name }}"> + <img class="img-fluid rounded mb-5 mb-md-0 int_img_max_s" src="{{ asset('storage/images/entrevistas/' . $interview->image_path) }}" + height="600px" width="auto" alt="{{ $interview->name }}"> </div> <div class="text-center" style="font-size: 23px; margin-bottom: 50px"> {{ $interview->sumary }} -- GitLab