Inicio » Cursos » Laravel Página Web Administrable

Curso Laravel Página Web Administrable

Lección: 17 ➜ CRUD Configuración

Básicamente se trata de la implementación de métodos para agregar, editar o eliminar registro de una tabla. En configuración utilizaremos dos métodos

Lección 17: CRUD Configuración

Básicamente se trata de la implementación de métodos para agregar, editar o eliminar registro de una tabla. En configuración utilizaremos dos métodos

CONTROLLER

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\Configuracion;
use Illuminate\Support\Str;
use Image;

class ConfiguracionController extends Controller
{
    
    public function index(){
        $registro = Configuracion::find(1);
        return view("admin.configuracion.index",compact('registro'));
    }

    public function update(Request $r,$id){
        $registro = Configuracion::findOrFail($id);
        $registro->fill($r->all());

        $logo_anterior      = $registro->urllogo;
        $favicon_anterior   = $registro->urlfavicon;
        $foto_anterior      = $registro->seo_urlfoto;

        if($r->hasFile('seo_urlfoto')){

            $rutaAnterior = public_path('/img/configuracion/'.$foto_anterior);
            if(file_exists($rutaAnterior)){ unlink(realpath($rutaAnterior)); }

            $imagen = $r->file('seo_urlfoto');
            $nuevonombre = Str::slug($r->razonsocial).'.'.$imagen->guessExtension();
            Image::make($imagen->getRealPath())
            ->resize(850,null,function($constraint){ $constraint->aspectRatio();  })
            ->save( public_path('/img/configuracion/'.$nuevonombre));

            $registro->seo_urlfoto = $nuevonombre;
        }

        if($r->hasFile('urlfavicon')){

            $rutaAnterior = public_path('/img/configuracion/'.$favicon_anterior);
            if(file_exists($rutaAnterior)){ unlink(realpath($rutaAnterior)); }

            $imagen = $r->file('urlfavicon');
            $nuevonombre = Str::slug($r->razonsocial).'_favicon.'.$imagen->guessExtension();
            Image::make($imagen->getRealPath())
            ->resize(16,null,function($constraint){ $constraint->aspectRatio();  })
            ->save( public_path('/img/configuracion/'.$nuevonombre));

            $registro->urlfavicon = $nuevonombre;
        }

        if($r->hasFile('urllogo')){

            $rutaAnterior = public_path('/img/configuracion/'.$logo_anterior);
            if(file_exists($rutaAnterior)){ unlink(realpath($rutaAnterior)); }

            $imagen = $r->file('urllogo');
            $nuevonombre = Str::slug($r->razonsocial).'.'.$imagen->guessExtension();
            Image::make($imagen->getRealPath())
            ->resize(200,null,function($constraint){ $constraint->aspectRatio();  })
            ->save( public_path('/img/configuracion/'.$nuevonombre));

            $registro->urllogo = $nuevonombre;
        }
        
        $registro->save();

        return redirect()->route('configuracion.index');


    }
}

VISTAS

@extends('layouts.app')

@section('content')
<div class="container-fluid">
    <div class="row">
        @include('admin.submenu')
        <div class="col-sm-10">

            {!! Form::open(['route'=>['configuracion.update',$registro],'method'=>'PUT','files'=>true]) !!}

            <div class="jumbotron">
                <div class="form-group">
                    <label for="seo_title">INGRESE TITLE</label>
                    {!! Form::text('seo_title',$registro->seo_title,['class'=>'form-control','maxlength'=>'67']) !!}
                </div>
    
                <div class="form-group">
                    <label for="seo_description">INGRESE DESCRIPTION</label>
                    {!! Form::textarea('seo_description',$registro->seo_description,['class'=>'form-control','maxlength'=>'155','rows'=>'3']) !!}
                </div>
                <div class="form-group">
                    <label for="seo_urlfoto">IMAGEN DESTACADA</label> <br>
                    <img src="/img/configuracion/{{$registro->seo_urlfoto}}">
                    {!! Form::file('seo_urlfoto') !!}
                </div>
            </div>


            <div class="form-group row">
                <div class="col-sm-3">
                    <label for="colorPrimario">COLOR PRIMARIO</label>
                    {!! Form::text('colorPrimario',$registro->colorPrimario,['class'=>'form-control','maxlength'=>'7']) !!}
                </div>
                
                <div class="col-sm-9">
                    <label for="urlfavicon">FAVICON</label> <br>
                    <img src="/img/configuracion/{{$registro->urlfavicon}}">
                    {!! Form::file('urlfavicon') !!}
                </div>
                <div class="col-sm-3">
                    <label for="colorsecundario">COLOR SECUNDARIO</label>
                    {!! Form::text('colorsecundario',$registro->colorsecundario,['class'=>'form-control','maxlength'=>'7']) !!}
                </div>
                <div class="col-sm-9">
                    <label for="urllogo">LOGO</label> <br>
                    <img src="/img/configuracion/{{$registro->urllogo}}">
                    {!! Form::file('urllogo') !!}
                </div>
            </div>

            <div class="form-group row">
                <div class="col-sm-6">
                    <label for="slogan">SLOGAN</label>
                    {!! Form::text('slogan',$registro->slogan,['class'=>'form-control','maxlength'=>'100']) !!}
                </div>
                <div class="col-sm-6">
                    <label for="frase_1">FRASE 1</label>
                    {!! Form::text('frase_1',$registro->frase_1,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                <div class="col-sm-6">
                    <label for="frase_2">FRASE 2</label>
                    {!! Form::text('frase_2',$registro->frase_2,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                
                <div class="col-sm-6">
                    <label for="frase_3">FRASE 3</label>
                    {!! Form::text('frase_3',$registro->frase_3,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
            </div>


            <div class="form-group row">
                
                <div class="col-sm-3">
                    <label for="razonsocial">RAZÓN SOCIAL</label>
                    {!! Form::text('razonsocial',$registro->razonsocial,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                <div class="col-sm-3">
                    <label for="direccion">DIRECCIÓN</label>
                    {!! Form::text('direccion',$registro->direccion,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                
                <div class="col-sm-3">
                    <label for="celular">CELULAR</label>
                    {!! Form::text('celular',$registro->celular,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                <div class="col-sm-3">
                    <label for="email">EMAIL</label>
                    {!! Form::text('email',$registro->email,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                <div class="col-sm-3">
                    <label for="facebook">FACEBOOK</label>
                    {!! Form::text('facebook',$registro->facebook,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
                <div class="col-sm-3">
                    <label for="youtube">YOUTUBE</label>
                    {!! Form::text('youtube',$registro->youtube,['class'=>'form-control','maxlength'=>'50']) !!}
                </div>
            </div>




           
            {!! Form::submit('GUARDAR',['class'=>'btn btn-success']) !!}
            {!! Form::close() !!}
        </div>
    </div>
</div>
@endsection

 


1728 visitas

Descarga el código del proyecto

Descarga el código fuente del proyecto adquiriendo el curso completo

Descargar ahora

Más cursos que pueden interesarte

Más cursos

Codea Codea App

México, Colombia, España, Venezuela, Argentina, Bolivia, Perú

© Todos los derechos reservados Codea App | ...de frente al código!!! | 2020 - 2023