From caa5f07db490db8a1072b4739f7792810903ac2e Mon Sep 17 00:00:00 2001 From: Velosergio Date: Sat, 18 Nov 2017 15:26:40 -0500 Subject: [PATCH] 0.0.0.10 Login Simplificado y CRUD para proyectos --- ChangeLog.md | 40 ++++++++++-- Doc/img5.png | Bin 0 -> 51856 bytes .../Auth/BlinterProfileController.php | 15 +++++ .../Controllers/Auth/RegisterController.php | 4 -- app/Http/Controllers/ProjectsController.php | 58 ++++++++++++++++++ .../2014_10_12_000000_create_users_table.php | 3 - ...12_100000_create_password_resets_table.php | 2 +- ...12_224626_create_blinter_profile_table.php | 9 +-- .../2017_11_18_111303_user_details.php | 49 +++++++++++++++ .../migrations/2017_11_18_125834_projects.php | 34 ++++++++++ resources/views/auth/register.blade.php | 36 ----------- resources/views/proyectos/index.blade.php | 20 ++++++ routes/web.php | 17 +++++ 13 files changed, 229 insertions(+), 58 deletions(-) create mode 100644 Doc/img5.png create mode 100644 app/Http/Controllers/Auth/BlinterProfileController.php create mode 100644 app/Http/Controllers/ProjectsController.php create mode 100644 database/migrations/2017_11_18_111303_user_details.php create mode 100644 database/migrations/2017_11_18_125834_projects.php create mode 100644 resources/views/proyectos/index.blade.php diff --git a/ChangeLog.md b/ChangeLog.md index e5477fb..92deca2 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -24,17 +24,47 @@ ▀▀▀▀▀▀▀▀▀▀ Todos los cambios notables de este proyecto estan documentadas en este archivo. +//Ejemplo +## [version estable.v-beta.v-alpha.cambio menor] - año-mes-dia +### Changed +### Fixed +### Added +### Removed -## [0.0.0.9] - 2017-11-16 +## [0.0.0.10] - 2017-11-18 ### Changed +- Datos personalizacion separados del Blinter Profile +- Ahora el registro viene en 3 fases +-- Primera Fase: + Registro de ID + eMail + Contraseña +-- Segunda Fase: + Registro de Primer Nombre + Segundo Nombre + Nick Name + Mensaje personal "opcional" + Biografia "Opcional" + Twitter + Facebook + Celular + DNI +-- Tercera Fase: Asignacion de 1 punto de atributo a todos los Skills + +### Fixed +### Added +- BlinterProfileController: Controlador encargado de asignar las variables blinter profile y completar datos del usuario +- ProjectsController: Sistema para Crear, Leer, Actualizar, Eliminar - "CRUD" +- Tabla Projects: Almacena y gestiona informacion de los proyectos + +### Removed + +## [0.0.0.9] - 2017-11-16 ### Fixed - Formulario de Registro - Bootstrap 4 CDN - Barra de navegacion superior -### Added -### Removed - ## [0.0.0.8] - 2017-11-14 ### Changed @@ -55,7 +85,6 @@ Todos los cambios notables de este proyecto estan documentadas en este archivo. - El Campo [Username] es ahora unico - Reparacion del login y register -### Added ### Removed - Se elimino archivos por defecto del Frontend Scaffolding de laravel @@ -137,7 +166,6 @@ Todos los cambios notables de este proyecto estan documentadas en este archivo. ## [0.0.0.1] 2017-10-25 ### Added - Registro e iniciacion de Variables - - Creacion Pagina de inicio con nombre de proyecto en la parte superior izquierda. - Creacion base de datos Pami con tabla usuarios para el registro de usuarios - Login: campos usuario, nombre, correo, contraseña con confirmacion. \ No newline at end of file diff --git a/Doc/img5.png b/Doc/img5.png new file mode 100644 index 0000000000000000000000000000000000000000..addfd9c4fba9f71a6f9fd1110e307c0e998aba67 GIT binary patch literal 51856 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⋓5PuI5m*JYOY9urQk>qgX2U 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 QLQa61s>acjA1?g#Z^x#_?*IS* literal 0 HcmV?d00001 diff --git a/app/Http/Controllers/Auth/BlinterProfileController.php b/app/Http/Controllers/Auth/BlinterProfileController.php new file mode 100644 index 0000000..0c87f93 --- /dev/null +++ b/app/Http/Controllers/Auth/BlinterProfileController.php @@ -0,0 +1,15 @@ + 'required|string|max:255', - 'lastname' => 'required|string|max:255', 'email' => 'required|string|email|max:255|unique:users', 'password' => 'required|string|min:6|confirmed', ]); @@ -61,8 +59,6 @@ protected function validator(array $data) protected function create(array $data) { return User::create([ - 'firtsname' => $data['firtsname'], - 'lastname' => $data['lastname'], 'email' => $data['email'], 'password' => bcrypt($data['password']), ]); diff --git a/app/Http/Controllers/ProjectsController.php b/app/Http/Controllers/ProjectsController.php new file mode 100644 index 0000000..a621026 --- /dev/null +++ b/app/Http/Controllers/ProjectsController.php @@ -0,0 +1,58 @@ + nombre = $request -> nombre; + $proyecto -> descripcion = $request -> descripcion; + $proyecto -> area = $request -> area; + //Guardando Proyecto + $proyecto -> save(); + //Retorno + return redirect('/proyectos'); + } + //Leer Proyecto + public function read(){ + //Leer + $proyectos = bproyecto::all(); + //Imprimir + return view('proyectos.index',['proyectos' => $proyectos]); + } + //Editar Proyecto + public function edit($id){ + $proyectos = bproyecto::all(); + $proyecto = bproyecto::findOrFail($id); + return view('proyectos.index',['proyectos' => $proyectos, 'project' => $project]); + } + //Actualizar Proyecto + public function update(Request $request, $id){ + $proyecto = bproyecto::findOrFail($id); + //Definiendo Proyecto + $proyecto -> nombre = $request -> nombre; + $proyecto -> descripcion = $request -> descripcion; + $proyecto -> area = $request -> area; + //Guardando Proyecto + $proyecto -> save(); + //Retorno + return redirect('/proyectos'); + } + //Preguntar + public function preguntar($id){ + $proyectos = broyecto::all(); + $proyectoDelete = bproyecto::findOrFail($id); + return view('proyectos.index',['proyectos' => $proyectos, 'proyectoDelete' => $proyectoDelete]); + } + public function delete($id){ + $proyecto = bproyecto::findOrFail($id); + $proyecto -> delete(); + return redirect('/proyectos'); + } +} \ No newline at end of file diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php index a27f6ba..1ea068b 100644 --- a/database/migrations/2014_10_12_000000_create_users_table.php +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -15,9 +15,6 @@ public function up() { Schema::create('users', function (Blueprint $table) { $table->increments('id'); - $table->string('firtsname'); - $table->string('lastname'); - $table->string('username')->unique(); $table->string('email')->unique(); $table->string('password'); $table->boolean('status')->default(true); diff --git a/database/migrations/2014_10_12_100000_create_password_resets_table.php b/database/migrations/2014_10_12_100000_create_password_resets_table.php index 0d5cb84..4d4241a 100644 --- a/database/migrations/2014_10_12_100000_create_password_resets_table.php +++ b/database/migrations/2014_10_12_100000_create_password_resets_table.php @@ -16,7 +16,7 @@ public function up() Schema::create('password_resets', function (Blueprint $table) { $table->string('email')->index(); $table->string('token'); - $table->timestamp('created_at')->nullable(); + $table->timestamp('created_at'); }); } diff --git a/database/migrations/2017_11_12_224626_create_blinter_profile_table.php b/database/migrations/2017_11_12_224626_create_blinter_profile_table.php index 4219a66..c010ae1 100644 --- a/database/migrations/2017_11_12_224626_create_blinter_profile_table.php +++ b/database/migrations/2017_11_12_224626_create_blinter_profile_table.php @@ -15,13 +15,6 @@ public function up() { Schema::create('blinter_profile', function (Blueprint $table) { $table->increments('id')->index(); - //Datos Personales - $table->mediumText('msg_personal')->nulleable; - $table->mediumText('Bio')->nulleable; - $table->string('Twitter')->nulleable; - $table->string('Facebook')->nulleable; - $table->integer('Celular')->nulleable; - $table->integer('DNI')->nulleable; //Blinter Skills $table->integer('Leadership')->{'1'}; $table->integer('Innovation')->{'1'}; @@ -34,7 +27,7 @@ public function up() $table->integer('Communication')->{'1'}; $table->integer('Community')->{'1'}; $table->integer('level')->{'1'}; - $table->integer('experience')->{'0'}; + $table->integer('experience')->{'1'}; //Llave Foreana $table->integer('user_id')->unsigned(); //Relacion diff --git a/database/migrations/2017_11_18_111303_user_details.php b/database/migrations/2017_11_18_111303_user_details.php new file mode 100644 index 0000000..bdbf371 --- /dev/null +++ b/database/migrations/2017_11_18_111303_user_details.php @@ -0,0 +1,49 @@ +increments('id')->index(); + //Datos Personales + $table->string('firtsname'); + $table->string('lastname'); + $table->string('username')->unique(); + $table->mediumText('msg_personal')->nulleable; + $table->mediumText('Bio')->nulleable; + $table->string('Twitter')->nulleable; + $table->string('Facebook')->nulleable; + $table->integer('Celular')->nulleable; + $table->integer('DNI')->nulleable; + //Llave Foreana + $table->integer('user_id')->unsigned(); + //Relacion + Schema::enableForeignKeyConstraints(); + $table->foreign('user_id') + ->references('id')->on('users') + ->onDelete('cascade'); + //Creacion / Actualizacion + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('user_details'); + } +} diff --git a/database/migrations/2017_11_18_125834_projects.php b/database/migrations/2017_11_18_125834_projects.php new file mode 100644 index 0000000..79d915f --- /dev/null +++ b/database/migrations/2017_11_18_125834_projects.php @@ -0,0 +1,34 @@ +increments('id')->index(); + $table->string('Nombre'); + $table->string('Descripcion'); + $table->string('Area'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('Projects'); + } +} diff --git a/resources/views/auth/register.blade.php b/resources/views/auth/register.blade.php index d6ca4fa..1bd0727 100644 --- a/resources/views/auth/register.blade.php +++ b/resources/views/auth/register.blade.php @@ -8,42 +8,6 @@
{{ csrf_field() }} - -
- -
- - @if ($errors->has('firtsname')) - - {{ $errors->first('firtsname') }} - - @endif -
-
- -
- -
- - @if ($errors->has('lastname')) - - {{ $errors->first('lastname') }} - - @endif -
-
- -
- -
- - @if ($errors->has('username')) - - {{ $errors->first('username') }} - - @endif -
-
diff --git a/resources/views/proyectos/index.blade.php b/resources/views/proyectos/index.blade.php new file mode 100644 index 0000000..cbf18e5 --- /dev/null +++ b/resources/views/proyectos/index.blade.php @@ -0,0 +1,20 @@ +@extends('layouts.app') +@section('content') +
+
+
+
+
Dashboard
+
+ @if (session('status')) +
+ {{ session('status') }} +
+ @endif + Estas conectado! +
+
+
+
+
+@endsection diff --git a/routes/web.php b/routes/web.php index 12fc04c..3127888 100644 --- a/routes/web.php +++ b/routes/web.php @@ -18,3 +18,20 @@ Auth::routes(); Route::get('/home', 'HomeController@index')->name('home'); + +//Sistema de Proyectos +Route::get('/proyectos', function () { + return view('proyectos'); +}); +//Crear +Route::post('/proyectos/crear', 'ProjectsController@create'); +//Leer +Route::get('/proyectos/', 'ProjectsController@read'); +//Actualizar +Route::post('/proyectos/update/{id}', 'ProjectsController@update'); +//Eliminar +Route::delete('/proyectos/delete/{id}', 'ProjectsController@delete'); +//Editar +Route::get('/proyectos/update/{id}', 'ProjectsController@edit'); +//Preguntar +Route::get('/proyectos/delete/{id}', 'ProjectsController@preguntar');