Skip to content

Commit

Permalink
Fixed #127 Rubro y web opcionales en empresa
Browse files Browse the repository at this point in the history
Ahora el rubro y página web de las empresas es opcional al momento de agregarlas.
  • Loading branch information
eperezf committed Oct 15, 2019
1 parent e9e4ce9 commit 03bda1d
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 61 deletions.
103 changes: 48 additions & 55 deletions web/app/Http/Controllers/EmpresaController.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,12 @@
* EmpresaController es el controlador del listado de empresas.
* En este controlador están las funciones para mostrar, agregar, editar, actualizar y eliminar las empresas.
* @author Eduardo Pérez
* @version v1.1
* @return void
*/
class EmpresaController extends Controller{
/**
* Muestra un listado de empresas
* @author Eduardo Pérez
* @version v1.0
* @return \Illuminate\Http\Response
*/
public function index(){
Expand All @@ -31,7 +29,6 @@ public function index(){
/**
* Muestra el formulario de creación de empresa
* @author Eduardo Pérez
* @version v1.1
* @return \Illuminate\Http\Response
*/
public function create(){
Expand All @@ -46,7 +43,6 @@ public function create(){
/**
* Guarda la empresa en la base de datos.
* @author Eduardo Pérez
* @version v1.1
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
Expand All @@ -55,32 +51,32 @@ public function store(Request $request){
if ($request->status == NULL){
$request->status = 0;
};

//Si no contiene www
if (!Str::contains($request->get('urlWeb'), 'www.')) {
//Si contiene https y no www
if (Str::contains($request->get('urlWeb'), 'https://')) {
$request->merge(['urlWeb' => 'https://www.' . Str::after($request->get('urlWeb'), 'https://')]);
}
//Si contiene http y no www
if (Str::contains($request->get('urlWeb'), 'http://')) {
$request->merge(['urlWeb' => 'http://www.' . Str::after($request->get('urlWeb'), 'http://')]);
}
//Si no contiene www
else {
$request->merge(['urlWeb' => 'www.' . $request->get('urlWeb')]);
}
}
//Si no contiene ni http ni https
if (!Str::contains($request->get('urlWeb'), 'https://') &&
!Str::contains($request->get('urlWeb'), 'http://')){
$request->merge(['urlWeb' => 'http://' . $request->get('urlWeb')]);
}

if ($request->urlWeb){
//Si no contiene www
if (!Str::contains($request->get('urlWeb'), 'www.')) {
//Si contiene https y no www
if (Str::contains($request->get('urlWeb'), 'https://')) {
$request->merge(['urlWeb' => 'https://www.' . Str::after($request->get('urlWeb'), 'https://')]);
}
//Si contiene http y no www
if (Str::contains($request->get('urlWeb'), 'http://')) {
$request->merge(['urlWeb' => 'http://www.' . Str::after($request->get('urlWeb'), 'http://')]);
}
//Si no contiene www
else {
$request->merge(['urlWeb' => 'www.' . $request->get('urlWeb')]);
}
}
//Si no contiene ni http ni https
if (!Str::contains($request->get('urlWeb'), 'https://') &&
!Str::contains($request->get('urlWeb'), 'http://')){
$request->merge(['urlWeb' => 'http://' . $request->get('urlWeb')]);
}
}
$request->validate(
['nombre'=>'required|unique:empresa'],
['rubro'=>'required'],
['urlWeb'=>'required'],
['rubro'=>'string'],
['urlWeb'=>'string'],
['correoContacto'=>'required'],
['status'=>'required']
);
Expand All @@ -103,7 +99,6 @@ public function store(Request $request){
/**
* Muestra el recurso especificado (no usado).
* @author Eduardo Pérez
* @version v1.0
* @param int $id
* @return \Illuminate\Http\Response
*/
Expand All @@ -115,7 +110,6 @@ public function show($id)
/**
* Muestra el formulario de edición de empresa.
* @author Eduardo Pérez
* @version v1.1
* @param int $id
* @return \Illuminate\Http\Response
*/
Expand All @@ -132,7 +126,6 @@ public function edit($id){
/**
* Actualiza la empresa especificada en la base de datos.
* @author Eduardo Pérez
* @version v1.2
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
Expand All @@ -141,35 +134,36 @@ public function update(Request $request, $id){
if (Auth::user()->rol >=4){
$validated = $request->validate(
['nombre'=>'string|required'],
['rubro'=>'string|required'],
['urlWeb'=>'string|required'],
['rubro'=>'string'],
['urlWeb'=>'string'],
['correoContacto'=>'email|required'],
['status'=>'required']
);
if ($request->status == NULL){
$request->status = 0;
};
//Si no contiene www
if (!Str::contains($request->get('urlWeb'), 'www.')) {
//Si contiene https y no www
if (Str::contains($request->get('urlWeb'), 'https://')) {
$request->merge(['urlWeb' => 'https://www.' . Str::after($request->get('urlWeb'), 'https://')]);
}
//Si contiene http y no www
if (Str::contains($request->get('urlWeb'), 'http://')) {
$request->merge(['urlWeb' => 'http://www.' . Str::after($request->get('urlWeb'), 'http://')]);
}
//Si no contiene www
else {
$request->merge(['urlWeb' => 'www.' . $request->get('urlWeb')]);
}
}
//Si no contiene ni http ni https
if (!Str::contains($request->get('urlWeb'), 'https://') &&
!Str::contains($request->get('urlWeb'), 'http://')){
$request->merge(['urlWeb' => 'http://' . $request->get('urlWeb')]);
}

if ($request->urlWeb){
//Si no contiene www
if (!Str::contains($request->get('urlWeb'), 'www.')) {
//Si contiene https y no www
if (Str::contains($request->get('urlWeb'), 'https://')) {
$request->merge(['urlWeb' => 'https://www.' . Str::after($request->get('urlWeb'), 'https://')]);
}
//Si contiene http y no www
if (Str::contains($request->get('urlWeb'), 'http://')) {
$request->merge(['urlWeb' => 'http://www.' . Str::after($request->get('urlWeb'), 'http://')]);
}
//Si no contiene www
else {
$request->merge(['urlWeb' => 'www.' . $request->get('urlWeb')]);
}
}
//Si no contiene ni http ni https
if (!Str::contains($request->get('urlWeb'), 'https://') &&
!Str::contains($request->get('urlWeb'), 'http://')){
$request->merge(['urlWeb' => 'http://' . $request->get('urlWeb')]);
}
}
$empresa = Empresa::find($id);
$empresa->nombre = $request->get('nombre');
$empresa->rubro = $request->get('rubro');
Expand All @@ -187,7 +181,6 @@ public function update(Request $request, $id){

/**
* Elimina la empresa de la base de datos.
* @version v1.1
* @author Eduardo Pérez
* @param int $id
* @return \Illuminate\Http\Response
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ public function up(){
Schema::create('empresa', function (Blueprint $table) {
$table->increments('idEmpresa');
$table->string('nombre', 200);
$table->string('rubro', 250);
$table->string('urlWeb', 200);
$table->string('rubro', 250)->nullable();
$table->string('urlWeb', 200)->nullable();
$table->string('correoContacto', 200);
$table->integer('status');
$table->timestamps();
Expand Down
4 changes: 2 additions & 2 deletions web/resources/views/empresa/create.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
@csrf
<div class="form-group">
<label for="name">Nombre</label>
<input class="form-control" id="nombre" name="nombre" aria-describedby="nombreHelp" placeholder="Nombre de la empresa">
<input class="form-control" id="nombre" name="nombre" aria-describedby="nombreHelp" placeholder="Nombre de la empresa" required>
</div>
<div class="form-group">
<label for="rubro">Rubro</label>
Expand All @@ -37,7 +37,7 @@
</div>
<div class="form-group">
<label for="correoContacto">Correo(s) de contacto</label>
<input class="form-control" id="correoContacto" name="correoContacto" aria-describedby="correoContactoHelp" placeholder="[email protected], [email protected]">
<input class="form-control" id="correoContacto" name="correoContacto" aria-describedby="correoContactoHelp" placeholder="[email protected], [email protected]" required>
<small id="rubroHelp" class="form-text text-muted">Si es más de uno, separarlos por coma.</small>
</div>
<div class="form-check">
Expand Down
4 changes: 2 additions & 2 deletions web/resources/views/empresa/edit.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,12 @@
</div>
<div class="form-group">
<label for="rubro">Rubro</label>
<input class="form-control" id="rubro" name="rubro" aria-describedby="rubroHelp" placeholder="Rubro de la empresa" value="{{$empresa->rubro}}" required>
<input class="form-control" id="rubro" name="rubro" aria-describedby="rubroHelp" placeholder="Rubro de la empresa" value="{{$empresa->rubro}}">
<small id="rubroHelp" class="form-text text-muted">Ej.: Consultoría en TI.</small>
</div>
<div class="form-group">
<label for="urlWeb">Página web</label>
<input class="form-control" id="urlWeb" name="urlWeb" aria-describedby="urlWebHelp" placeholder="https://..." value="{{$empresa->urlWeb}}" required>
<input class="form-control" id="urlWeb" name="urlWeb" aria-describedby="urlWebHelp" placeholder="https://..." value="{{$empresa->urlWeb}}">
<small id="urlWebHelp" class="form-text text-muted">Ej.: http://empresa.com</small>
</div>
<div class="form-group">
Expand Down

0 comments on commit 03bda1d

Please sign in to comment.