From 8bf9eed6b6bace904ec8d738a6ecd570b7102cde Mon Sep 17 00:00:00 2001
From: Rachel Sidney <13515124@std.stei.itb.ac.id>
Date: Sun, 25 Mar 2018 20:11:34 +0700
Subject: [PATCH] add delete in profile for admin + add css for active tab

---
 app/Http/Controllers/MembersController.php |  9 ++-
 public/css/style.css                       |  8 +++
 resources/views/dashboard.blade.php        |  4 ++
 resources/views/inc/adminmenu.blade.php    | 30 ++++----
 resources/views/inc/navbar.blade.php       |  2 +-
 resources/views/members/list.blade.php     | 81 +++++++++++-----------
 resources/views/users/profile.blade.php    | 16 +++--
 routes/web.php                             |  2 +
 8 files changed, 89 insertions(+), 63 deletions(-)

diff --git a/app/Http/Controllers/MembersController.php b/app/Http/Controllers/MembersController.php
index b983060..6829e5e 100644
--- a/app/Http/Controllers/MembersController.php
+++ b/app/Http/Controllers/MembersController.php
@@ -134,6 +134,13 @@ class MembersController extends Controller
      */
     public function destroy($id)
     {
-        //
+        $user = Member::find($id);
+        if($user !== null){
+            $user->delete();
+            $members = Member::orderBy('name','asc')->paginate(30);
+            return view('members.list')->with('members', $members)->with('success', 'Member Deleted');
+        } else {
+            return abort(404);
+        }
     }
 }
diff --git a/public/css/style.css b/public/css/style.css
index 32134f4..04cf601 100644
--- a/public/css/style.css
+++ b/public/css/style.css
@@ -39,6 +39,14 @@
 	color: black !important;
 }
 
+.active {
+	background-color: #f0f0f0;
+}
+
+.color-active {
+	color: black;
+}
+
 .sidebar .nav-link {
 	color: white !important;
 }
diff --git a/resources/views/dashboard.blade.php b/resources/views/dashboard.blade.php
index bfa92aa..97cc436 100644
--- a/resources/views/dashboard.blade.php
+++ b/resources/views/dashboard.blade.php
@@ -26,4 +26,8 @@
   <script>window.jQuery || document.write('<script src="../../../../assets/js/vendor/jquery-slim.min.js"><\/script>')</script>
   <script src="../../../../assets/js/vendor/popper.min.js"></script>
   <script src="../../../../dist/js/bootstrap.min.js"></script>
+  <script>
+    document.getElementById("nav-one").classList.add("active");
+    document.getElementById("text-nav-one").classList.add("color-active");
+  </script>
 @endsection
diff --git a/resources/views/inc/adminmenu.blade.php b/resources/views/inc/adminmenu.blade.php
index 463b18a..ab33436 100644
--- a/resources/views/inc/adminmenu.blade.php
+++ b/resources/views/inc/adminmenu.blade.php
@@ -3,22 +3,28 @@
     <nav class="col-3 sidebar">
       <div class="sidebar-sticky">
         <ul class="nav flex-column">
-          <li class="nav-item">
+          <li class="nav-item" id="nav-one">
             <a class="nav-link" href="/dashboard">
-              <span data-feather="home"></span>
-              <i class="sideMenu">Dashboard</i><span class="sr-only">(current)</span>
+              <span id="text-nav-one">  
+                <span data-feather="home"></span>
+                <i class="sideMenu">Dashboard</i><span class="sr-only">(current)</span>
+              </span>    
             </a>
           </li>
-          <li class="nav-item">
+          <li class="nav-item" id="nav-two">
             <a class="nav-link" href="/members">
-              <span data-feather="users"></span>
-              <i class="sideMenu">Members List</i>
+              <span id="text-nav-two">
+                <span data-feather="users"></span>
+                <i class="sideMenu">Members List</i>
+              </span>    
             </a>
           </li>
-          <li class="nav-item">
+          <li class="nav-item" id="nav-three">
             <a class="nav-link" href="/dashboard/#">
-              <span data-feather="file"></span>
-              <i class="sideMenu">Articles</i>
+              <span id="text-nav-three">
+                <span data-feather="file"></span>
+                <i class="sideMenu">Articles</i>
+              </span>
             </a>
           </li>
         </ul>
@@ -26,12 +32,6 @@
     </nav>
   <!-- Icons -->
   <script src="https://unpkg.com/feather-icons/dist/feather.min.js"></script>
-  <!--<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>-->
   <script>
     feather.replace();
-    /*$(document).ready(function() {
-      $(".nav-item").click(function() {
-        $(".nav-item").css("background-color", "red");
-      });
-    });*/
   </script>
\ No newline at end of file
diff --git a/resources/views/inc/navbar.blade.php b/resources/views/inc/navbar.blade.php
index 23eb116..d3ca948 100644
--- a/resources/views/inc/navbar.blade.php
+++ b/resources/views/inc/navbar.blade.php
@@ -13,7 +13,7 @@
               <!-- Left Side Of Navbar -->
               <ul class="navbar-nav mr-auto">
                   <li class="nav-item">
-                    <a class="nav-link" href="/">Home <span class="sr-only">(current)</span></a>
+                    <a class="nav-link" href="/dashboard">Home <span class="sr-only">(current)</span></a>
                   </li>
                   @if(!Auth::guest() &&  Auth::user()->IsAdmin == 1)
                   <li class="nav-item">
diff --git a/resources/views/members/list.blade.php b/resources/views/members/list.blade.php
index 174ce81..b5ee0ae 100644
--- a/resources/views/members/list.blade.php
+++ b/resources/views/members/list.blade.php
@@ -1,44 +1,43 @@
 @extends('layouts.app')
-
 @section('title', 'Members List')
-
-@section('content')
-      @include('inc.adminmenu')
-  
-          <main role="main" class="col-7">
-            <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pb-2 mb-3 border-bottom">
-              <img src="{{URL::asset('storage/banner.jpg')}}" id="bannerMember">
-            </div>
-            <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pb-2 mb-3 border-bottom">
-              <h1 class="h2">Members List</h1>
-              <a class="btn btn-primary" href="/add">
-                Add Member
-              </a>
-            </div>
-            @if(count($members) > 0)
-            <table class="table table-bordered">
-              <thead class="thead-light custom-thread">
-                <tr>
-                  <th scope="col-3">Student ID</th>
-                  <th scope="col-6">Name</th>
-                  <th scope="col-3">Email Address</th>
-                </tr>  
-              </thead>
-              <tbody>
-                @foreach($members as $member)
-                  <tr>
-                    <td>{{$member->nim}}</td>
-                    <td><a href="/members/{{$member->id}}">{{$member->name}}</a></td>
-                    <td>{{$member->email}}</td>
-                  </tr>
-                @endforeach
-              </tbody>
-            </table>
-              <ul class="pagination pull-right">{{$members->links()}}</ul>
-            @else
-                <p>No member.</p>
-            @endif
-          </main>
+  @section('content')
+    @include('inc.adminmenu')
+      <main role="main" class="col-7">
+        <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pb-2 mb-3 border-bottom">
+          <img src="{{URL::asset('storage/banner.jpg')}}" id="bannerMember">
         </div>
-        </main>
-@endsection
\ No newline at end of file
+        <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pb-2 mb-3 border-bottom">
+          <h1 class="h2">Members List</h1>
+          <a class="btn btn-primary" href="/add">
+            Add Member
+          </a>
+        </div>
+        @if(count($members) > 0)
+        <table class="table table-bordered">
+          <thead class="thead-light custom-thread">
+            <tr>
+              <th scope="col-3">Student ID</th>
+              <th scope="col-6">Name</th>
+              <th scope="col-3">Email Address</th>
+            </tr>  
+          </thead>
+          <tbody>
+            @foreach($members as $member)
+              <tr>
+                <td>{{$member->nim}}</td>
+                <td><a href="/members/{{$member->id}}">{{$member->name}}</a></td>
+                <td>{{$member->email}}</td>
+              </tr>
+            @endforeach
+          </tbody>
+        </table>
+          <ul class="pagination pull-right">{{$members->links()}}</ul>
+        @else
+            <p>No member.</p>
+        @endif
+      </main>
+      <script>
+        document.getElementById("nav-two").classList.add("active");
+        document.getElementById("text-nav-two").classList.add("color-active");
+      </script>
+  @endsection
\ No newline at end of file
diff --git a/resources/views/users/profile.blade.php b/resources/views/users/profile.blade.php
index ace7e14..a93f211 100644
--- a/resources/views/users/profile.blade.php
+++ b/resources/views/users/profile.blade.php
@@ -44,11 +44,17 @@
                             </div>
                         </div>
                     <div class="panel-footer">
-                            <a href="/members/{{$user->id}}/edit" data-original-title="Edit this user" 
-                                data-toggle="tooltip" type="button" class="btn btn-sm btn-warning pull right">
-                                <i class="glyphicon glyphicon-edit"></i>
-                                </a>
-                        </div>
+                        <a href="/members/{{$user->id}}/edit" data-original-title="Edit this user" 
+                            data-toggle="tooltip" type="button" class="btn btn-sm btn-warning pull right">
+                            <i class="glyphicon glyphicon-edit"></i>
+                        </a>
+                        @if(!Auth::guest() &&  Auth::user()->IsAdmin == 1)
+                            <a onclick="return confirm('Do you want to delete this member?')" href="/members/{{$user->id}}/delete" data-original-title="Delete this user" 
+                                data-toggle="tooltip" type="button" class="btn btn-sm btn-danger pull right">
+                                <i class="glyphicon glyphicon-trash"></i>
+                            </a>
+                        @endif
+                    </div>
                 </div>
             </div>
         </div>
diff --git a/routes/web.php b/routes/web.php
index 0c349b9..01ec8e0 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -23,6 +23,8 @@ Route::post('/importmember','AddMemberController@importMember');
 Route::resource('profile', 'MembersController');
 Route::resource('addmember', 'AddMemberController');
 Route::get('/dashboard', 'DashboardController@index');
+Route::get('/members/{user}/delete', 'MembersController@destroy');
+
 Route::get('/add', function () {
 	return view('admin.addmember');
 })->middleware('admin');
-- 
GitLab