From f39cf03c0046ed94c7019829e63a3bdaf0f17566 Mon Sep 17 00:00:00 2001 From: Lara121801 Date: Thu, 24 Nov 2022 15:30:28 -0400 Subject: [PATCH 1/5] CRUD *- USUARIO --- app/Http/Controllers/UsuarioController.php | 38 ++++++-- app/Models/User.php | 3 + .../views/admin/Historial/index.blade.php | 93 ++++++++++--------- resources/views/admin/user/create.blade.php | 40 ++++++-- resources/views/admin/user/index.blade.php | 82 +++++++++++++++- routes/web.php | 2 + 6 files changed, 194 insertions(+), 64 deletions(-) diff --git a/app/Http/Controllers/UsuarioController.php b/app/Http/Controllers/UsuarioController.php index 2c656fa..9113ff1 100644 --- a/app/Http/Controllers/UsuarioController.php +++ b/app/Http/Controllers/UsuarioController.php @@ -2,7 +2,11 @@ namespace App\Http\Controllers; -use App\Models\Usuario; +//use App\Models\Usuario; +use App\Models\User; +use App\Models\Persona; +use App\Models\TipoSangre; + use Illuminate\Http\Request; class UsuarioController extends Controller { @@ -13,7 +17,9 @@ class UsuarioController extends Controller */ public function index() { - // + $usuarios = user::with(['persona'])->get(); + return view('admin.user.index', compact('usuarios')); + //return $usuario; } /** * Show the form for creating a new resource. @@ -22,7 +28,9 @@ public function index() */ public function create() { - // + $personas = Persona::get(); + $tipos_sangre = TipoSangre::get(); + return view('admin.user.create', compact('tipos_sangre','personas')); } /** @@ -33,7 +41,16 @@ public function create() */ public function store(Request $request) { - // + $datos = $request->all(); + Persona::create($datos); + $id = Persona::latest('id_persona')->first(); + //return to_route('personas.index'); + $datos1 = ['rol'=>"1", 'estado'=>1, 'id_persona'=>$id->id_persona]; + $datosUser = array_merge($datos, $datos1); + User::create($datosUser); + return redirect('/Usuario'); + + } /** @@ -76,8 +93,17 @@ public function update(Request $request, Usuario $usuario) * @param \App\Models\Usuario $usuario * @return \Illuminate\Http\Response */ - public function destroy(Usuario $usuario) + public function destroy(Request $request, $usuario) { - // + $input = $request->all(); + + $usuarios = User::find($usuario); + + $estado = ['estado'=>0]; + + $usuarios->update($estado); + + //Redirecionas para no bugear el jalar de datos con reddirect para recargar la vista totalmente + return redirect('/Usuario'); } } diff --git a/app/Models/User.php b/app/Models/User.php index 6665665..279754b 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -22,6 +22,9 @@ class User extends Authenticatable 'name', 'email', 'username', + 'id_persona', + 'rol', + 'estado', 'password', ]; diff --git a/resources/views/admin/Historial/index.blade.php b/resources/views/admin/Historial/index.blade.php index c3fb968..c88f0fd 100644 --- a/resources/views/admin/Historial/index.blade.php +++ b/resources/views/admin/Historial/index.blade.php @@ -1,55 +1,56 @@ -
-
-
-
-
-

Historias

-
-
- - Nueva Historia - -
-
-
- - - - - - - - - - - - - @foreach ($Historias as $Historia) - - - - - - - - - @endforeach - -
PersonaSedeMedicoFecha del HistorialDetalles de la Historia Acciones
{{ $Historia->personas->nombre_per ." ".$Historia->personas->apellido_pa_per ." ".$Historia->personas->apellido_ma_per }}{{ $Historia->sede->nombre_sede }}{{ $Historia->users->persona->nombre_per ." ". $Historia->users->persona->apellido_pa_per ." ". $Historia->users->persona->apellido_ma_per}}{{ $Historia->fecha_historial}}{{ $Historia->detalles_historial }} - -
- {{ method_field('DELETE') }} - {{ csrf_field() }} - -
-
+
+
+
+
+
+

Historias

+
+
+ + Nueva Historia + +
+
+
+ + + + + + + + + + + + + @foreach ($Historias as $Historia) + + + + + + + + + @endforeach + +
PersonaSedeMedicoFecha del HistorialDetalles de la Historia Acciones
{{ $Historia->personas->nombre_per ." ".$Historia->personas->apellido_pa_per ." ".$Historia->personas->apellido_ma_per }}{{ $Historia->sede->nombre_sede }}{{ $Historia->users->persona->nombre_per ." ". $Historia->users->persona->apellido_pa_per ." ". $Historia->users->persona->apellido_ma_per}}{{ $Historia->fecha_historial}}{{ $Historia->detalles_historial }} + + +
+ {{ method_field('DELETE') }} + {{ csrf_field() }} + +
+
+
-
diff --git a/resources/views/admin/user/create.blade.php b/resources/views/admin/user/create.blade.php index f765bf3..5767ecf 100644 --- a/resources/views/admin/user/create.blade.php +++ b/resources/views/admin/user/create.blade.php @@ -6,17 +6,37 @@
{!! csrf_field() !!} -
-
- -
-
-
-
- -
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+


diff --git a/resources/views/admin/user/index.blade.php b/resources/views/admin/user/index.blade.php index fe2fd8f..3b12cda 100644 --- a/resources/views/admin/user/index.blade.php +++ b/resources/views/admin/user/index.blade.php @@ -1,3 +1,81 @@ - + +
+
+
+
+
+

Usuarios

+
+
+ + Nueva Usuario + +
+
+
+ + + + + + + + + + + + + + + + + + + + @foreach ($usuarios as $usuario) + @if ($usuario->estado==1) + + + + + + + + + + + - + + + + + + + @endif + + @endforeach + +
NombreAPAMCICelularFecha Nac# SeguroEs donanteTipo SangreParienteUsernameCorreoAcciones
{{ $usuario->persona->nombre_per }}{{ $usuario->persona->apellido_pa_per }}{{ $usuario->persona->apellido_ma_per }}{{ $usuario->persona->ci_per }}{{ $usuario->persona->cel_per }}{{ $usuario->persona->fecha_nac }}{{ $usuario->persona->num_seguro }}{{ $usuario->persona->donante }}{{ $usuario->persona->tipo_sangre->nombre_tipo_sangre }}{{ $usuario->persona->pariente->nombre_per }}{{ $usuario->username }}{{ $usuario->email }} + + + @method('DELETE') + @csrf + + +
+
+
+
+
+
+
+
diff --git a/routes/web.php b/routes/web.php index c58c499..aacc58e 100644 --- a/routes/web.php +++ b/routes/web.php @@ -10,6 +10,7 @@ use App\Http\Controllers\PersonaController; use App\Http\Controllers\HistorialController; +use App\Http\Controllers\UsuarioController; /* |-------------------------------------------------------------------------- | Web Routes @@ -48,4 +49,5 @@ Route::resource('Historial', HistorialController::class); Route::resource('TipoRelacion', \App\Http\Controllers\TipoRelacionController::class); Route::resource('Citas', CitasController::class); +Route::resource('Usuario', UsuarioController::class); From fb14224cad9e9e7a0bf443765c1284a7640d72fc Mon Sep 17 00:00:00 2001 From: Marc15975 <91290441+Marc15975@users.noreply.github.com> Date: Sat, 26 Nov 2022 18:49:03 -0400 Subject: [PATCH 2/5] Validaciones Sedes y Historial --- app/Http/Controllers/HistorialController.php | 11 ++--- app/Http/Controllers/SedeController.php | 7 +++- app/Http/Requests/EditHistorialRequest.php | 28 +++++++++++++ app/Http/Requests/EditSedeRequest.php | 41 +++++++++++++++++++ app/Http/Requests/StoreHistorialRequest.php | 29 +++++++++++++ app/Http/Requests/StorePersonaRequest.php | 10 ----- app/Http/Requests/StoreSedeRequest.php | 37 +++++++++++------ .../views/admin/Historial/create.blade.php | 11 +++-- .../views/admin/Historial/edit.blade.php | 11 +++-- resources/views/admin/Sedes/create.blade.php | 19 +++++++-- resources/views/admin/Sedes/edit.blade.php | 19 +++++++-- 11 files changed, 181 insertions(+), 42 deletions(-) create mode 100644 app/Http/Requests/EditHistorialRequest.php create mode 100644 app/Http/Requests/EditSedeRequest.php create mode 100644 app/Http/Requests/StoreHistorialRequest.php diff --git a/app/Http/Controllers/HistorialController.php b/app/Http/Controllers/HistorialController.php index 444dd4a..76767ea 100644 --- a/app/Http/Controllers/HistorialController.php +++ b/app/Http/Controllers/HistorialController.php @@ -8,6 +8,10 @@ use App\Models\User; use App\Models\Persona; use Illuminate\Http\Request; +use App\Http\Requests\StoreHistorialRequest; +use App\Http\Requests\EditHistorialRequest; + + class HistorialController extends Controller { @@ -32,7 +36,7 @@ public function create() //return $Users; } - public function store(Request $request) + public function store(StoreHistorialRequest $request) { // $Datos_Historia=request()->except('_token'); @@ -70,7 +74,7 @@ public function edit($Historial) } - public function update(Request $request, $historial) + public function update(EditHistorialRequest $request, $historial) { // $input = $request->all(); @@ -89,9 +93,6 @@ public function destroy( $Historial) { // Historial::destroy($Historial); - - // $Historial->delete(); - return redirect('/Historial'); } } diff --git a/app/Http/Controllers/SedeController.php b/app/Http/Controllers/SedeController.php index 5470503..89412e4 100644 --- a/app/Http/Controllers/SedeController.php +++ b/app/Http/Controllers/SedeController.php @@ -5,6 +5,9 @@ use Illuminate\Http\Request; use App\Models\Sede; +use App\Http\Requests\StoreSedeRequest; +use App\Http\Requests\EditSedeRequest; + class SedeController extends Controller { @@ -24,7 +27,7 @@ public function create() } - public function store(Request $request) + public function store(StoreSedeRequest $request) { // $Datos_Sedes=request()->except('_token'); @@ -50,7 +53,7 @@ public function edit($Id_Sede) return View ('admin.Sedes.edit',compact('Sede')); } - public function update(Request $request, $Id_Sede) + public function update(EditSedeRequest $request, $Id_Sede) { // diff --git a/app/Http/Requests/EditHistorialRequest.php b/app/Http/Requests/EditHistorialRequest.php new file mode 100644 index 0000000..5781aa7 --- /dev/null +++ b/app/Http/Requests/EditHistorialRequest.php @@ -0,0 +1,28 @@ + 'required|string|min:20|max:255', + ]; + } + public function messages() +{ + return [ + 'detalles_historial.required' => 'Es necesesario que tenga datos en estte campo', + 'detalles_historial.min' => 'Los detalles minimamente deben tener mas de 20 caracteres', + 'detalles_historial.max' => 'Los detalles no deben superar los 255 caracteres' + ]; +} +} diff --git a/app/Http/Requests/EditSedeRequest.php b/app/Http/Requests/EditSedeRequest.php new file mode 100644 index 0000000..06b1fc1 --- /dev/null +++ b/app/Http/Requests/EditSedeRequest.php @@ -0,0 +1,41 @@ + 'required|string|min:10|max:100', + 'direccion_sede' => 'required|string|min:10|max:120', + 'telefono_sede' => 'required|integer|min:8' + + ]; + } + public function messages() +{ + return [ + 'nombre_sede.required' => 'Es neceserio que este campo este llenado', + 'nombre_sede.min' => 'El nombre minimamente debe tener mas de 10 caracteres', + 'nombre_sede.max' => 'El nombre no debe superar los 120 caracteres', + + 'direccion_sede.required' => 'Es neceserio que este campo este llenado', + 'direccion_sede.min' => 'La dirrecion minimamente debe tener mas de 10 caracteres', + 'direccion_sede.max' => 'La dirrecion no debe superar los 120 caracteres', + + 'telefono_sede.required' => 'Es neceserio que este campo este llenado', + 'telefono_sede.integer' => 'Debe ser un numero no una palabra', + 'telefono_sede.min' => 'El telefono minimamente debe tener 8 numeros', + 'telefono_sede.max' => 'El telefono maximo debe tener 10 numeros' + + ]; +} +} diff --git a/app/Http/Requests/StoreHistorialRequest.php b/app/Http/Requests/StoreHistorialRequest.php new file mode 100644 index 0000000..ef931c4 --- /dev/null +++ b/app/Http/Requests/StoreHistorialRequest.php @@ -0,0 +1,29 @@ + 'required|string|min:20|max:255', + ]; + } + public function messages() +{ + return [ + 'detalles_historial.required' => 'Es necesesario que tenga datos en estte campo', + 'detalles_historial.min' => 'Los detalles minimamente deben tener mas de 20 caracteres', + 'detalles_historial.max' => 'Los detalles no deben superar los 255 caracteres' + ]; +} +} diff --git a/app/Http/Requests/StorePersonaRequest.php b/app/Http/Requests/StorePersonaRequest.php index c88122d..ce54957 100644 --- a/app/Http/Requests/StorePersonaRequest.php +++ b/app/Http/Requests/StorePersonaRequest.php @@ -6,21 +6,11 @@ class StorePersonaRequest extends FormRequest { - /** - * Determine if the user is authorized to make this request. - * - * @return bool - */ public function authorize() { return true; } - /** - * Get the validation rules that apply to the request. - * - * @return array - */ public function rules() { return [ diff --git a/app/Http/Requests/StoreSedeRequest.php b/app/Http/Requests/StoreSedeRequest.php index 39ea6ca..936c0e6 100644 --- a/app/Http/Requests/StoreSedeRequest.php +++ b/app/Http/Requests/StoreSedeRequest.php @@ -3,28 +3,41 @@ namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; - +use Illuminate\Http\Request; class StoreSedeRequest extends FormRequest { - /** - * Determine if the user is authorized to make this request. - * - * @return bool - */ + public function authorize() { return true; } - /** - * Get the validation rules that apply to the request. - * - * @return array - */ public function rules() { return [ - // + 'nombre_sede' => 'required|string|min:10|max:100', + 'direccion_sede' => 'required|string|min:10|max:120', + 'telefono_sede' => 'required|integer|min:8' + ]; } + public function messages() +{ + return [ + 'nombre_sede.required' => 'Es neceserio que este campo este llenado', + 'nombre_sede.min' => 'El nombre minimamente debe tener mas de 10 caracteres', + 'nombre_sede.max' => 'El nombre no debe superar los 120 caracteres', + + 'direccion_sede.required' => 'Es neceserio que este campo este llenado', + 'direccion_sede.min' => 'La dirrecion minimamente debe tener mas de 10 caracteres', + 'direccion_sede.max' => 'La dirrecion no debe superar los 120 caracteres', + + 'telefono_sede.required' => 'Es neceserio que este campo este llenado', + 'telefono_sede.integer' => 'Debe ser un numero no una palabra', + 'telefono_sede.min' => 'El telefono minimamente debe tener 8 numeros', + 'telefono_sede.max' => 'El telefono maximo debe tener 10 numeros' + + ]; } +} + diff --git a/resources/views/admin/Historial/create.blade.php b/resources/views/admin/Historial/create.blade.php index d00ca50..b05d532 100644 --- a/resources/views/admin/Historial/create.blade.php +++ b/resources/views/admin/Historial/create.blade.php @@ -47,12 +47,17 @@
-
+

-
+ + @error('detalles_historial') +
  • {{$message}}

  • + @enderror +
    -
    + +
    diff --git a/resources/views/admin/Historial/edit.blade.php b/resources/views/admin/Historial/edit.blade.php index 1fa554b..977d5be 100644 --- a/resources/views/admin/Historial/edit.blade.php +++ b/resources/views/admin/Historial/edit.blade.php @@ -52,12 +52,17 @@
    -
    +

    -
    + + @error('detalles_historial') +
  • {{$message}}

  • + @enderror -
    +
    + +
    diff --git a/resources/views/admin/Sedes/create.blade.php b/resources/views/admin/Sedes/create.blade.php index 10a42f3..3170713 100644 --- a/resources/views/admin/Sedes/create.blade.php +++ b/resources/views/admin/Sedes/create.blade.php @@ -6,11 +6,24 @@
    {!! csrf_field() !!}
    -
    + + @error('nombre_sede') +
  • {{$message}}
  • + @enderror + +

    -
    + + @error('direccion_sede') +
  • {{$message}}
  • + @enderror + +

    -
    + + @error('telefono_sede') +
  • {{$message}}
  • + @enderror


    -
    + + @error('nombre_sede') +
  • {{$message}}
  • + @enderror

    -
    + + @error('direccion_sede') +
  • {{$message}}
  • + @enderror

    -
    + + @error('telefono_sede') +
  • {{$message}}
  • + @enderror + +


    +
    +
    + +
    -
    +
    + +
    -
    +
    + +
    -
    +
    + +
    -
    +
    + +
    -
    +
    + +
    -
    +
    + +
    - @foreach($tipos_sangre as $tipo_sangre) @endforeach
    + +
    - @foreach($personas as $persona) @endforeach
    + +
    -
    +
    + +
    -
    +
    +
    -
    +
    +
    -
    +
    +
    -
    From b536aeb0a2e88b05ec7b9ccd535e1e313af2c17f Mon Sep 17 00:00:00 2001 From: rats4final <80012704+rats4final@users.noreply.github.com> Date: Thu, 1 Dec 2022 12:54:39 -0400 Subject: [PATCH 4/5] cosas fortify --- app/Actions/Fortify/CreateNewUser.php | 5 ++-- resources/views/admin/Persona/index.blade.php | 25 +++++++++++++++++-- resources/views/auth/register.blade.php | 5 ---- 3 files changed, 26 insertions(+), 9 deletions(-) diff --git a/app/Actions/Fortify/CreateNewUser.php b/app/Actions/Fortify/CreateNewUser.php index 103dd15..638131a 100644 --- a/app/Actions/Fortify/CreateNewUser.php +++ b/app/Actions/Fortify/CreateNewUser.php @@ -21,7 +21,7 @@ class CreateNewUser implements CreatesNewUsers public function create(array $input) { Validator::make($input, [ - 'name' => ['required', 'string', 'max:255'], + //'name' => ['required', 'string', 'max:255'], 'email' => [ 'required', 'string', @@ -34,10 +34,11 @@ public function create(array $input) ])->validate(); return User::create([ - 'name' => $input['name'], + //'name' => $input['name'], 'email' => $input['email'], 'username' => $input['username'], 'password' => Hash::make($input['password']), + 'rol' => 1, ]); } } diff --git a/resources/views/admin/Persona/index.blade.php b/resources/views/admin/Persona/index.blade.php index cd1930c..8844c6d 100644 --- a/resources/views/admin/Persona/index.blade.php +++ b/resources/views/admin/Persona/index.blade.php @@ -7,7 +7,8 @@

    Personas

    - + Nueva Persona
    @@ -39,7 +40,27 @@ {{ $persona->cel_per }} {{ $persona->fecha_nac }} {{ $persona->num_seguro }} - {{ $persona->donante }} + + @if ($persona->donante == 1) + + + + @else + + + + + + @endif + {{ $persona->tipo_sangre->nombre_tipo_sangre }} {{ $persona->pariente->nombre_per }} diff --git a/resources/views/auth/register.blade.php b/resources/views/auth/register.blade.php index 371cd5e..9523651 100644 --- a/resources/views/auth/register.blade.php +++ b/resources/views/auth/register.blade.php @@ -21,11 +21,6 @@ class="peer placeholder-transparent h-10 w-full border-b-2 border-gray-300 text- class="absolute left-0 -top-3.5 text-gray-600 text-sm peer-placeholder-shown:text-base peer-placeholder-shown:text-gray-440 peer-placeholder-shown:top-2 transition-all peer-focus:-top-3.5 peer-focus:text-gray-600 peer-focus:text-sm">Nombre
    - @error('name') -
    - {{ $message }} -
    - @enderror
    Date: Thu, 1 Dec 2022 13:55:11 -0400 Subject: [PATCH 5/5] fin crud personas --- app/Http/Controllers/PersonaController.php | 4 +- ...1_add_id_persona_columm_to_users_table.php | 2 +- .../views/admin/Persona/create.blade.php | 5 +- resources/views/admin/Persona/edit.blade.php | 42 +- resources/views/admin/Persona/show.blade.php | 10 +- resources/views/home.blade.php | 516 +++++++++++++++++- 6 files changed, 561 insertions(+), 18 deletions(-) diff --git a/app/Http/Controllers/PersonaController.php b/app/Http/Controllers/PersonaController.php index aa858a0..c9df31c 100644 --- a/app/Http/Controllers/PersonaController.php +++ b/app/Http/Controllers/PersonaController.php @@ -66,7 +66,9 @@ public function show(Persona $persona) */ public function edit(Persona $persona) { - return view('admin.Persona.edit', compact('persona')); + $personas = Persona::get(); + $tipos_sangre = TipoSangre::get(); + return view('admin.Persona.edit', compact('tipos_sangre','personas','persona')); } /** diff --git a/database/migrations/2022_11_24_044401_add_id_persona_columm_to_users_table.php b/database/migrations/2022_11_24_044401_add_id_persona_columm_to_users_table.php index 179ab4b..5bd31e2 100644 --- a/database/migrations/2022_11_24_044401_add_id_persona_columm_to_users_table.php +++ b/database/migrations/2022_11_24_044401_add_id_persona_columm_to_users_table.php @@ -14,7 +14,7 @@ public function up() { Schema::table('users', function (Blueprint $table) { - $table->Integer('id_persona')->unsigned(); + $table->Integer('id_persona')->unsigned()->nullable(); $table->foreign('id_persona')->references('id_persona')->on('personas'); }); } diff --git a/resources/views/admin/Persona/create.blade.php b/resources/views/admin/Persona/create.blade.php index fc85774..095a87c 100644 --- a/resources/views/admin/Persona/create.blade.php +++ b/resources/views/admin/Persona/create.blade.php @@ -32,7 +32,10 @@ @endforeach

    -
    +

    diff --git a/resources/views/admin/Persona/edit.blade.php b/resources/views/admin/Persona/edit.blade.php index f594631..3f81552 100644 --- a/resources/views/admin/Persona/edit.blade.php +++ b/resources/views/admin/Persona/edit.blade.php @@ -13,18 +13,44 @@


    -
    +

    -
    +

    -
    +

    -
    -
    -
    +

    -
    -
    +
    +
    +
    +
    +
    +
    diff --git a/resources/views/admin/Persona/show.blade.php b/resources/views/admin/Persona/show.blade.php index 856fab0..2d2e211 100644 --- a/resources/views/admin/Persona/show.blade.php +++ b/resources/views/admin/Persona/show.blade.php @@ -8,10 +8,14 @@

    Apellido Materno : {{ $persona->apellido_ma_per }}

    Carnet de Identidad: {{ $persona->ci_per }}

    Celular: {{ $persona->cel_per }}

    -

    Fecha de Nacimiento: {{ $persona->fecha_nac }}

    +

    Fecha de Nacimiento: {{ $persona->fecha_nac->format('d/m/Y') }}

    Numero de Seguro: {{ $persona->num_seguro }}

    -

    Es donante: {{ $persona->donante }}

    -

    Tipo de Sangre: {{ $persona->id_tipo_sangre }}

    + @if ($persona->donante == 1) +

    Es donante: Si

    + @else +

    Es donante: No

    + @endif +

    Tipo de Sangre: {{ $persona->tipo_sangre->nombre_tipo_sangre }}

    diff --git a/resources/views/home.blade.php b/resources/views/home.blade.php index 1b57338..2c2dc27 100644 --- a/resources/views/home.blade.php +++ b/resources/views/home.blade.php @@ -1,6 +1,514 @@ -
    -

    Bienvenido al Sistema de Citas del Hospital San Gabriel

    - Ir al perfil -
    + + + + + + + + Tailwind Starter Template - Day Admin Template: Tailwind Toolbox + + + + + @vite(['resources/css/app.css']) + + + + + + + + + + + + +
    + +
    + + + +
    +
    + +
    +
    +
    +
    +
    +
    +
    Total Revenue
    +

    $3249

    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    Total Users
    +

    249

    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    New Users
    +

    2

    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    Server Uptime
    +

    152 days

    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    To Do List
    +

    7 tasks

    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    Issues
    +

    3

    +
    +
    +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    +
    Graph
    +
    +
    + + +
    +
    + +
    + +
    + +
    +
    +
    Graph
    +
    +
    + + +
    +
    + +
    + +
    + +
    +
    +
    Graph
    +
    +
    + + +
    +
    + +
    + +
    + +
    +
    +
    Graph
    +
    +
    + +
    +
    + +
    + +
    + +
    +
    +
    Template
    +
    +
    + +
    +
    + +
    + +
    + +
    +
    +
    Table
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameSideRole
    Obi Wan KenobiLightJedi
    GreedoSouthScumbag
    Darth VaderDarkSith
    + +

    See More issues...

    + +
    +
    + +
    + + +
    + + + +
    + + +
    + + +
    +
    + +
    +
    +
    +

    About

    +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas vel mi ut felis tempus commodo nec id erat. Suspendisse consectetur dapibus velit ut lacinia. +

    +
    +
    + +
    +
    +

    Social

    + +
    +
    +
    + + + +
    +
    + + + + + + +