Changeset 4b7e2d3
- Timestamp:
- 10/23/21 04:03:46 (3 years ago)
- Branches:
- develop, master
- Children:
- b39afb5
- Parents:
- c6b84df
- Files:
-
- 4 added
- 39 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
app/Exports/FilesExport.php
rc6b84df r4b7e2d3 5 5 use App\Models\File; 6 6 use App\Models\Folder; 7 use App\Models\User;8 7 use Maatwebsite\Excel\Concerns\FromCollection; 9 8 use Maatwebsite\Excel\Concerns\WithHeadings; … … 26 25 $row->location, 27 26 $row->getSize($row->location) . ' MB', 28 $row-> Folder::find($row->folder_id)->name . ' - ' . Folder::find($row->folder_id)->arch_id,27 $row->folder_id . ' - ' . Folder::find($row->folder_id)->name . ' - ' . Folder::find($row->folder_id)->arch_id, 29 28 $row->created_at, 30 29 $row->updated_at … … 40 39 'Location', 41 40 'Size', 42 ' Folder - Archive ID',41 'ID - Folder - Archive ID', 43 42 'Created at', 44 43 'Updated at' -
app/Exports/FoldersExport.php
rc6b84df r4b7e2d3 5 5 use App\Models\Department; 6 6 use App\Models\Folder; 7 use App\Models\User; 7 8 use Maatwebsite\Excel\Concerns\FromCollection; 8 9 use Maatwebsite\Excel\Concerns\WithHeadings; … … 26 27 $row->note, 27 28 $row->location, 28 $row-> User::find($row->user_id)->username,29 $row->user_id . ' - ' . User::find($row->user_id)->username, 29 30 $row->Department::find($row->department_id)->name . ' - ' . Department::find($row->department_id)->code, 30 31 $row->is_important, … … 43 44 'Note', 44 45 'Location', 45 'Created by ',46 'Created by ID - Username', 46 47 'Department name - code', 47 48 'Is important', -
app/Exports/UsersExport.php
rc6b84df r4b7e2d3 28 28 $row->phone_number, 29 29 $row->is_confirmed, 30 $row-> Role::find($row->role_id)->name,30 $row->role_id . ' - ' . Role::find($row->role_id)->name, 31 31 $row->where('id', $row->created_by)->pluck('username')->first(), 32 32 $row->created_at, … … 46 46 'Phone number', 47 47 'Is confirmed', 48 'Role ',48 'Role ID - Username', 49 49 'Created by', 50 50 'Created at', -
app/Http/Controllers/Dashboard/DepartmentsController.php
rc6b84df r4b7e2d3 147 147 if(!$flag) { 148 148 $zip->close(); 149 $headers = array('Content-Type' => 'application/octet-stream' ,);149 $headers = array('Content-Type' => 'application/octet-stream'); 150 150 $zip_new_name = Carbon::now()->format('d.m.Y - H:i') . '- Departments.zip'; 151 151 return response()->download($zip_file, $zip_new_name, $headers); … … 153 153 else { 154 154 Alert::flash("All departments are empty", "warning"); 155 return redirect()-> route("dashboard.departments.index");155 return redirect()->back(); 156 156 } 157 157 } … … 186 186 else{ 187 187 Alert::flash("This department has no files", "warning"); 188 return redirect()-> route("dashboard.departments.index");188 return redirect()->back(); 189 189 } 190 190 -
app/Http/Controllers/Dashboard/ExportExcelController.php
rc6b84df r4b7e2d3 3 3 namespace App\Http\Controllers\Dashboard; 4 4 5 use App\Exports\DepartmentsExport; 5 6 use App\Exports\FilesExport; 6 7 use App\Exports\FoldersExport; … … 32 33 33 34 } 35 36 public function ExportDepartments() 37 { 38 return Excel::download(new DepartmentsExport(), Carbon::now()->format('d.m.Y - H:i') . ' - departments.xlsx'); 39 40 } 41 34 42 } -
app/Http/Controllers/Dashboard/FilesController.php
rc6b84df r4b7e2d3 26 26 "textExt" => array("txt", "doc", "docx"), 27 27 "imageExt" => array("png", "jpg", "jpeg"), 28 "fileTypes" => '.' . implode(',.', explode(',', explode(':', FileType::find('1')->mimes)[1]))28 "fileTypes" => '.' . implode(',.', explode(',', FileType::find('1')->mimes)) 29 29 ]); 30 30 } … … 35 35 $file->delete(); 36 36 Storage::disk('uploads')->delete($file->location); 37 $file->folder()->decrement('no_of_files'); 37 38 38 39 Alert::flash($file->name . " deleted successfully"); … … 59 60 $newFile->location = $location . DIRECTORY_SEPARATOR . $fileName; 60 61 $newFile->folder()->associate($folder); 62 $newFile->folder()->increment('no_of_files'); 61 63 $newFile->save(); 62 64 } … … 65 67 Alert::flash("New files added successfully"); 66 68 67 return redirect()-> route("dashboard.files.index");69 return redirect()->back(); 68 70 } 69 71 else { 70 72 Alert::flash("No files were uploaded", "error"); 71 73 72 return redirect()-> route("dashboard.files.index");74 return redirect()->back(); 73 75 } 74 76 } -
app/Http/Controllers/Dashboard/FoldersController.php
rc6b84df r4b7e2d3 39 39 $folders = $foldersInDeptSort->orderBy('name', 'asc')->paginate(12); 40 40 } 41 else if ($request->query('sort') == 'no_of_files') { 42 $folders = $foldersInDeptSort->orderBy('no_of_files', 'desc')->paginate(12); 43 } 41 44 else if($request->query('sort') == 'count'){ 42 45 $total = $foldersInDeptSort->folder->files->count(); … … 52 55 else if ($request->query('sort') == 'name') { 53 56 $folders = Folder::orderBy('name', 'asc')->paginate(12); 57 } 58 else if ($request->query('sort') == 'no_of_files') { 59 $folders = Folder::orderBy('no_of_files', 'desc')->paginate(12); 54 60 } 55 61 else if ($request->query('sort') == 'important') { … … 97 103 "deptName" => $deptName, 98 104 "deptCode" => $deptCode, 99 "fileTypes" => '.' . implode(',.', explode(',', explode(':', FileType::find('1')->mimes)[1]))105 "fileTypes" => '.' . implode(',.', explode(',', FileType::find('1')->mimes)) 100 106 ]); 101 107 … … 117 123 $folder->user()->associate($user); 118 124 $folder->department()->associate($department); 125 $folder->department()->increment('no_of_folders'); 119 126 120 127 $folder->arch_id = $request->arch_id; … … 149 156 $newFile->location = $location . DIRECTORY_SEPARATOR . $fileName; 150 157 $newFile->folder()->associate($folder); 158 $newFile->folder()->increment('no_of_files'); 151 159 $newFile->save(); 152 160 } … … 155 163 Alert::flash("New folder created successfully"); 156 164 157 return redirect()-> route("dashboard.folders.index");165 return redirect()->back(); 158 166 } 159 167 … … 177 185 $department = Department::find($request->department); 178 186 179 $folder->department()-> associate($department);180 181 $oldLocation = $folder-> department->location . DIRECTORY_SEPARATOR . $folder->name;187 $folder->department()->increment('no_of_folders'); 188 189 $oldLocation = $folder->location; 182 190 183 191 $folder->name = $request->name; … … 186 194 $folder->updated_at = Carbon::now(); 187 195 188 $location = $folder->department->location . DIRECTORY_SEPARATOR . $request->name; 189 190 if ($folder->isDirty('name')) { 191 if (!Storage::disk('uploads')->has($location)) { 192 Storage::disk('uploads')->move($oldLocation, $location); 193 foreach($files as $file){ 194 $file->location = $location . DIRECTORY_SEPARATOR . $file->name; 196 $newLocation = Department::find($request->department)->location . DIRECTORY_SEPARATOR . $request->name; 197 198 if($folder->department_id != $request->department){ 199 $folder->department()->decrement('no_of_folders'); 200 if (!Storage::disk('uploads')->has($newLocation)) { 201 Storage::disk('uploads')->move($oldLocation, $newLocation); 202 foreach($files as $file) { 203 $file->location = $newLocation . DIRECTORY_SEPARATOR . $file->name; 195 204 $file->save(); 196 205 } 197 206 } 198 207 } 208 if($folder->isDirty('name')) { 209 if (!Storage::disk('uploads')->has($newLocation)) { 210 Storage::disk('uploads')->move($oldLocation, $newLocation); 211 foreach($files as $file) { 212 $file->location = $newLocation . DIRECTORY_SEPARATOR . $file->name; 213 $file->save(); 214 } 215 } 216 } 217 218 $folder->department()->associate($department); 219 220 $folder->location = $newLocation; 199 221 200 222 if ($request->has('file_item')) { 201 223 foreach ($request->file_item as $file) { 202 224 $fileName = $folder->name . '-' . uniqid() . '.' . $file->getClientOriginalExtension(); 203 $file->storeAs($ location . DIRECTORY_SEPARATOR, $fileName);225 $file->storeAs($newLocation . DIRECTORY_SEPARATOR, $fileName); 204 226 $newFile = new File(); 205 227 $newFile->name = $fileName; 206 $newFile->location = $ location . DIRECTORY_SEPARATOR . $fileName;228 $newFile->location = $newLocation . DIRECTORY_SEPARATOR . $fileName; 207 229 $newFile->folder()->associate($folder); 230 $newFile->folder()->increment('no_of_files'); 208 231 $newFile->save(); 209 232 } 210 233 } 211 234 212 $folder->location = $location;213 214 235 $folder->save(); 215 216 236 217 237 Alert::flash("Folder edited successfully"); … … 246 266 $location = $folder->department->location . DIRECTORY_SEPARATOR . $folder->name; 247 267 Storage::disk('uploads')->deleteDirectory($location); 268 $folder->department()->decrement('no_of_folders'); 248 269 Alert::flash($folder->name . " deleted successfully"); 270 return redirect()->back(); 249 271 } 250 272 Alert::flash($folder->name . " is important", "error"); 251 return redirect()-> route("dashboard.folders.index");273 return redirect()->back(); 252 274 } 253 275 … … 306 328 } 307 329 else { 308 $files = File::where('folder_id', $id)->paginate(1 0);330 $files = File::where('folder_id', $id)->paginate(12); 309 331 } 310 332 … … 317 339 "imageExt" => array("png", "jpg", "jpeg"), 318 340 "folders" => $folders, 319 "fileTypes" => '.' . implode(',.', explode(',', explode(':', FileType::find('1')->mimes)[1]))341 "fileTypes" => '.' . implode(',.', explode(',', FileType::find('1')->mimes)) 320 342 ]); 321 343 } -
app/Http/Controllers/Dashboard/IndexController.php
rc6b84df r4b7e2d3 9 9 use App\Models\User; 10 10 use App\Http\Controllers\Controller; 11 use Carbon\Carbon; 12 use Illuminate\Support\Facades\DB; 11 13 12 14 class IndexController extends Controller … … 18 20 ); 19 21 22 $date = Carbon::today()->subDays(5); 23 $recentFiles = File::where('created_at', '>=', $date)->get(); 24 25 $year = ['2021','2022','2023','2024', '2025']; 26 27 $file = []; 28 foreach ($year as $key => $value) { 29 $file[] = File::where(DB::raw("DATE_FORMAT(created_at, '%Y')"),$value)->count(); 30 } 31 20 32 return view("dashboard.index")->with([ 21 33 "counters" => $counters, 34 "largestDepartments" => Department::orderBy('no_of_folders', 'desc')->limit(10)->get(), 35 "folders" => Folder::all(), 36 "files" => File::all(), 37 "recentFiles" => $recentFiles, 38 "year" => json_encode($year,JSON_NUMERIC_CHECK), 39 "file" => json_encode($file,JSON_NUMERIC_CHECK), 22 40 "departments" => Department::all(), 23 "folders" => Folder::all(), 24 "files" => File::all() 25 ]); 41 "excelExt" => array("xls", "xlsx", "xls", "csv"), 42 "textExt" => array("txt", "doc", "docx"), 43 "imageExt" => array("png", "jpg", "jpeg"), 44 45 ]); 26 46 } 27 47 } -
app/Http/Controllers/Dashboard/SettingsController.php
rc6b84df r4b7e2d3 77 77 } 78 78 79 80 81 79 public function fileTypes(FileTypeRequest $request) 82 80 { -
app/Models/Department.php
rc6b84df r4b7e2d3 14 14 protected $table = "departments"; 15 15 16 protected $fillable = ["name", "code", "location", "user_id" ];16 protected $fillable = ["name", "code", "location", "user_id", "no_of_folders"]; 17 17 18 18 protected $casts = [ -
app/Models/File.php
rc6b84df r4b7e2d3 3 3 namespace App\Models; 4 4 5 use Illuminate\Database\Eloquent\Factories\HasFactory; 5 6 use Illuminate\Database\Eloquent\Model; 6 7 use Illuminate\Support\Facades\Storage; … … 8 9 class File extends Model 9 10 { 11 use HasFactory; 12 10 13 protected $table = "files"; 11 14 protected $fillable = ["name", "location", "document_id"]; -
database/factories/DepartmentFactory.php
rc6b84df r4b7e2d3 4 4 5 5 use App\Models\Department; 6 use App\Models\Folder; 6 7 use Carbon\Carbon; 7 8 use Illuminate\Database\Eloquent\Factories\Factory; 8 9 use Illuminate\Support\Facades\Storage; 10 use function Sodium\increment; 9 11 10 12 class DepartmentFactory extends Factory … … 24 26 public function definition() 25 27 { 26 $location = $this->faker->unique()->numberBetween(1 , 15);28 $location = $this->faker->unique()->numberBetween(10, 25); 27 29 Storage::disk('uploads')->makeDirectory('Departments/' . $location); 28 30 return [ 29 'name' => "Department" . $this->faker->unique()->firstName(),31 'name' => "Department" . ' ' . $this->faker->unique()->firstName(), 30 32 'code' => $location, 31 33 'location' => 'Departments' . DIRECTORY_SEPARATOR . $location, 32 'user_id' => $this->faker->numberBetween('1', '2'), 33 'created_at' => Carbon::now() 34 'no_of_folders' => 0, 35 'user_id' => "1", 36 'created_at' => $this->faker->dateTime() 34 37 ]; 35 38 } -
database/factories/FolderFactory.php
rc6b84df r4b7e2d3 6 6 use App\Models\Folder; 7 7 use Carbon\Carbon; 8 use Faker\Provider\DateTime; 8 9 use Illuminate\Database\Eloquent\Factories\Factory; 9 10 use Illuminate\Support\Facades\Storage; … … 27 28 28 29 $deptId = $this->faker->numberBetween('1', '15'); 30 29 31 $deptCode = Department::find($deptId)->code; 30 32 $name = $this->faker->unique()->firstName(); … … 33 35 Storage::disk('uploads')->makeDirectory($location); 34 36 35 36 37 return [ 37 38 'arch_id' => $deptCode . "/" . $this->faker->unique()->randomNumber(), 38 39 'name' => $name, 39 'note' => $this->faker->realText(),40 'note' => "This a note field", 40 41 'location' => $location, 41 42 'user_id' => $this->faker->numberBetween('1', '2'), -
database/factories/UserFactory.php
rc6b84df r4b7e2d3 26 26 'name' => $this->faker->firstName(), 27 27 'surname' => $this->faker->lastName(), 28 'username' => $this->faker->u serName(),28 'username' => $this->faker->unique()->userName(), 29 29 'password' => $this->faker->password(), 30 'email' => $this->faker-> email(),30 'email' => $this->faker->unique()->email(), 31 31 'phone_number' => $this->faker->phoneNumber(), 32 32 'role_id' => $this->faker->numberBetween(1, 2), … … 35 35 'is_forgot_password' => $this->faker->boolean, 36 36 'created_by' => "1", 37 'created_at' => Carbon::now()37 'created_at' => now() 38 38 ]; 39 39 } -
database/migrations/2021_09_29_121244_create_departments_table.php
rc6b84df r4b7e2d3 16 16 Schema::create('departments', function (Blueprint $table) { 17 17 $table->increments('id'); 18 $table->integer("user_id")->unsigned();19 18 $table->string("name"); 20 19 $table->string("code"); 20 $table->integer("user_id")->unsigned(); 21 21 $table->string("location"); 22 $table->integer("no_of_folders")->default(0); 22 23 $table->timestamps(); 23 24 -
database/migrations/2021_10_06_103305_create_folders_table.php
rc6b84df r4b7e2d3 20 20 $table->text("note")->nullable(); 21 21 $table->string("location"); 22 $table->integer("no_of_files")->default(0); 22 23 $table->integer("user_id")->unsigned(); 23 24 $table->integer("department_id")->unsigned(); -
database/migrations/2021_10_21_144552_create_file_types_table.php
rc6b84df r4b7e2d3 16 16 Schema::create('file_types', function (Blueprint $table) { 17 17 $table->increments('id'); 18 $table->string("mimes")->default(' mimes:');18 $table->string("mimes")->default('jpg,jpeg,png,pdf,docx,xls,xlsx,txt,ppt,pptx'); 19 19 $table->integer("max_size"); 20 20 $table->integer("user_id")->unsigned(); -
database/seeders/DatabaseSeeder.php
rc6b84df r4b7e2d3 19 19 $this->call(UsersTableSeeder::class); 20 20 $this->call(DepartmentsTableSeeder::class); 21 $this->call(FileType Seeder::class);21 $this->call(FileTypesTableSeeder::class); 22 22 $this->call(FoldersTableSeeder::class); 23 $this->call(FilesTableSeeder::class); 23 24 } 24 25 } -
database/seeders/DepartmentsTableSeeder.php
rc6b84df r4b7e2d3 4 4 5 5 use App\Models\Department; 6 use App\Models\Folder; 7 use App\Models\User; 6 8 use Carbon\Carbon; 7 9 use Illuminate\Database\Seeder; -
database/seeders/FileTypesTableSeeder.php
rc6b84df r4b7e2d3 6 6 use Illuminate\Database\Seeder; 7 7 8 class FileType Seeder extends Seeder8 class FileTypesTableSeeder extends Seeder 9 9 { 10 10 /** … … 16 16 { 17 17 \DB::table("file_types")->insert([ 18 "mimes" => " mimes:jpg,jpeg,png,pdf,docx,xls,xlsx,txt,ppt,pptx",18 "mimes" => "jpg,jpeg,png,pdf,docx,xls,xlsx,txt,ppt,pptx", 19 19 "max_size" => "5000", 20 20 "user_id" => "1", -
database/seeders/FoldersTableSeeder.php
rc6b84df r4b7e2d3 3 3 namespace Database\Seeders; 4 4 5 use App\Models\Department; 5 6 use App\Models\Folder; 6 7 use Carbon\Carbon; … … 16 17 public function run() 17 18 { 18 Folder::factory()->count(300)->create(); 19 Folder::factory()->count(500)->create(); 20 $folders = Folder::all(); 21 22 foreach ($folders as $folder) { 23 $folder->department()->increment('no_of_folders'); 24 } 19 25 } 20 26 } -
database/seeders/UsersTableSeeder.php
rc6b84df r4b7e2d3 27 27 "is_confirmed" => true, 28 28 "created_by" => "1", 29 "created_at" => Carbon::now()29 "created_at" => now() 30 30 ]); 31 31 32 User::factory()->count( 20)->create();32 User::factory()->count(50)->create(); 33 33 34 34 } -
public/assets/js/app.js
rc6b84df r4b7e2d3 898 898 /***/ (function(module, exports, __webpack_require__) { 899 899 900 __webpack_require__( /*! C:\wamp64\www\themeforest\nago\resources\js\app.js */"./resources/js/app.js");901 module.exports = __webpack_require__( /*! C:\wamp64\www\themeforest\nago\public\assets\sass\app.scss */"./public/assets/sass/app.scss");900 __webpack_require__("./resources/js/app.js"); 901 module.exports = __webpack_require__("./public/assets/sass/app.scss"); 902 902 903 903 … … 1015 1015 }); 1016 1016 1017 function hasNew(response) { 1018 1019 for(var i=0; i<response.length; i++) { 1020 if(!response[i].isRead) { 1021 return true; 1022 } 1023 } 1024 1025 return false; 1026 } 1027 1017 1028 function notifications() { 1018 1029 … … 1067 1078 }); 1068 1079 } 1080 1081 $(".dropdown-notifications-unread .nav-unread").hide(); 1082 notifications(); 1083 setInterval(function() { notifications(); }, 5000); 1084 1085 $(".dropdown-notifications-wrapper").click(function() { 1086 $(".dropdown-notifications-unread .nav-unread").hide(); 1087 }); 1069 1088 1070 1089 $(document).on('click', '#btn-layout-builder', function () { -
public/assets/js/examples/pages/user-list.js
rc6b84df r4b7e2d3 15 15 "orderable": false, 16 16 "targets": [0, 2] 17 } 17 }, 18 18 ], 19 'order': [1, 'asc'] 19 'order': [1, 'asc'], 20 buttons: ['copy', 'csv', 'excel', 'pdf', 'print'] 20 21 }); 21 22 -
resources/assets/js/app.min.js
rc6b84df r4b7e2d3 497 497 /***/ (function(module, exports, __webpack_require__) { 498 498 499 __webpack_require__( /*! C:\wamp64\www\themeforest\nago\resources\js\app.js */"./resources/js/app.js");500 module.exports = __webpack_require__( /*! C:\wamp64\www\themeforest\nago\public\assets\sass\app.scss */"./public/assets/sass/app.scss");499 __webpack_require__("./resources/js/app.js"); 500 module.exports = __webpack_require__("./public/assets/sass/app.scss"); 501 501 502 502 -
resources/assets/js/custom.js
rc6b84df r4b7e2d3 108 108 }); 109 109 110 function hasNew(response) { 111 112 for(var i=0; i<response.length; i++) { 113 if(!response[i].isRead) { 114 return true; 115 } 116 } 117 118 return false; 119 } 120 110 121 function notifications() { 111 122 … … 160 171 }); 161 172 } 173 174 $(".dropdown-notifications-unread .nav-unread").hide(); 175 notifications(); 176 setInterval(function() { notifications(); }, 5000); 177 178 $(".dropdown-notifications-wrapper").click(function() { 179 $(".dropdown-notifications-unread .nav-unread").hide(); 180 }); 162 181 163 182 $(document).on('click', '#btn-layout-builder', function () { -
resources/views/auth/create_password.blade.php
rc6b84df r4b7e2d3 1 1 @extends('layouts.auth') 2 2 3 @section("title", " Create password | TechBlog")3 @section("title", "SaveSpace - Create password") 4 4 5 5 @section('content') -
resources/views/auth/forgot.blade.php
rc6b84df r4b7e2d3 1 1 @extends('layouts.auth') 2 2 3 @section("title", " Forgot | TechBlog")3 @section("title", "SaveSpace - Forgot") 4 4 5 5 @section('content') -
resources/views/auth/login.blade.php
rc6b84df r4b7e2d3 1 1 @extends('layouts.auth') 2 2 3 @section("title", " Login | SaveSpace")3 @section("title", "SaveSpace | Login") 4 4 5 5 @section('content') -
resources/views/auth/verify.blade.php
rc6b84df r4b7e2d3 1 1 @extends('layouts.auth') 2 2 3 @section("title", " Verify | TechBlog")3 @section("title", "SaveSpace - Verify") 4 4 5 5 @section('content') -
resources/views/dashboard/departments/index.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "SaveSpace - Departments") 4 5 @section('pageTitle', 'Departments')6 4 7 5 @section('head') … … 28 26 <i class="fa fa-download pr-1"></i> Download files 29 27 </a> 28 <a href="{{ route('dashboard.departments.export') }}" class="btn btn-success text-white">Export table</a> 30 29 </div> 31 30 </div> … … 57 56 <td></td> 58 57 <td>{{$department->id }}</td> 59 <td> {{ $department->name }}</td>58 <td><a href="{{ route("dashboard.folders.index", ['id' => $department->id]) }}" class="text-linkedin">{{ $department->name }}</a></td> 60 59 <td>{{ $department->code }}</td> 61 <td>{{ $department-> folder->count()}}</td>60 <td>{{ $department->no_of_folders }}</td> 62 61 <td>{{ $department->getCreatedByName() }}</td> 63 62 <td>{{ date('d.m.Y - H:i', strtotime($department->created_at)) }}</td> -
resources/views/dashboard/files/index.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "SaveSpace - Files") 4 5 @section('pageTitle', 'Files')6 4 7 5 @section('head') -
resources/views/dashboard/folders/files.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "SaveSpace - Folder") 4 5 @section('pageTitle', 'SaveSpace - Folder')6 7 4 8 5 @section('content') … … 103 100 </a> 104 101 <div class="dropdown-menu dropdown-menu-right"> 105 <a href="javascript:void(0)" class="dropdown-item" data-toggle="modal" data-target="#edit Modal_{{$file->id}}">102 <a href="javascript:void(0)" class="dropdown-item" data-toggle="modal" data-target="#editFileModal_{{$file->id}}"> 106 103 Rename 107 104 </a> … … 147 144 </div> 148 145 149 <div class="modal fade" id="edit Modal_{{$file->id}}" tabindex="-1" role="dialog" aria-hidden="true">146 <div class="modal fade" id="editFileModal_{{$file->id}}" tabindex="-1" role="dialog" aria-hidden="true"> 150 147 <div class="modal-dialog modal-dialog-centered modal-lg" role="document"> 151 148 <div class="modal-content"> … … 176 173 </form> 177 174 </div> 175 </div> 176 </div> 177 </div> 178 @empty 179 <div class="col-xl-3 col-lg-4 col-md-6 col-sm-12">No items found</div> 180 @endforelse 181 182 <div class="modal fade" id="editModal_{{$folder->id}}" tabindex="-1" role="dialog" aria-hidden="true"> 183 <div class="modal-dialog modal-dialog-centered modal-lg" role="document"> 184 <div class="modal-content"> 185 <div class="modal-header"> 186 <h5 class="modal-title" id="exampleModalCenterTitle">Edit folder</h5> 187 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 188 <i class="ti-close"></i> 189 </button> 190 </div> 191 <div class="modal-body"> 192 <form action="{{ route("dashboard.folders.edit", ["id" => $folder->id]) }}" method="post" accept-charset="utf-8" enctype="multipart/form-data"> 193 @method("patch") 194 @csrf 195 <div class="row"> 196 <div class="col-md-6"> 197 <div class="form-group"> 198 <label>Department</label> 199 <select class="form-control edit_folder_deparment" name="department" required> 200 @foreach ($departments as $department) 201 <option value="{{ $department->id }}" data-dept-code="{{ $department->code }}" {{ old("department", $folder->department->id) == $department->id ? "selected" : "" }}>{{ $department->name }}</option> 202 @endforeach 203 </select> 204 </div> 205 </div> 206 <div class="col-md-6"> 207 <div class="form-group"> 208 <label>Archive ID</label> 209 <input type="text" name="arch_id" value="{{ old("arch_id", $folder->arch_id) }}" class="form-control" placeholder="Archive ID" required> 210 </div> 211 </div> 212 </div> 213 <div class="row"> 214 <div class="col-md-6"> 215 <div class="form-group"> 216 <label>Name</label> 217 <input type="text" name="name" value="{{ old("name", $folder->name) }}" class="form-control" placeholder="Name" minlength="2" maxlength="30" required> 218 </div> 219 </div> 220 <div class="col-md-6"> 221 <div class="form-group"> 222 <label>Note</label> 223 <textarea class="form-control" name="note" maxlength="80"> 224 {{ old("note", $folder->note) }} 225 </textarea> 226 </div> 227 </div> 228 </div> 229 <div class="row"> 230 <div class="col-md-6"> 231 <input type="file" class="form-control" id="file-item" name="file_item[]" accept="{{ $fileTypes }}" multiple> 232 </div> 233 </div> 234 <br/> 235 <div class="modal-footer"> 236 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close 237 </button> 238 <button type="submit" class="btn btn-primary">Save changes</button> 239 </div> 240 </form> 241 </div> 242 178 243 </div> 179 244 </div> … … 255 320 </div> 256 321 </div> 257 @empty258 <div class="col-xl-3 col-lg-4 col-md-6 col-sm-12">No items found</div>259 @endforelse260 322 </div> 261 323 … … 266 328 </div> 267 329 268 <div class="modal fade" id="editModal_{{$folder->id}}" tabindex="-1" role="dialog" aria-hidden="true">269 <div class="modal-dialog modal-dialog-centered modal-lg" role="document">270 <div class="modal-content">271 <div class="modal-header">272 <h5 class="modal-title" id="exampleModalCenterTitle">Edit folder</h5>273 <button type="button" class="close" data-dismiss="modal" aria-label="Close">274 <i class="ti-close"></i>275 </button>276 </div>277 <div class="modal-body">278 <form action="{{ route("dashboard.folders.edit", ["id" => $folder->id]) }}" method="post" accept-charset="utf-8" enctype="multipart/form-data">279 @method("patch")280 @csrf281 <div class="row">282 <div class="col-md-6">283 <div class="form-group">284 <label>Folder</label>285 <select class="form-control edit_folder_deparment" name="department" required>286 @foreach ($departments as $department)287 <option value="{{ $department->id }}" data-dept-code="{{ $department->code }}" {{ old("department", $folder->department->id) == $department->id ? "selected" : "" }}>{{ $department->name }}</option>288 @endforeach289 </select>290 </div>291 </div>292 <div class="col-md-6">293 <div class="form-group">294 <label>Archive ID</label>295 <input type="text" name="arch_id" value="{{ old("arch_id", $folder->arch_id) }}" class="form-control" placeholder="Archive ID" required>296 </div>297 </div>298 </div>299 <div class="row">300 <div class="col-md-6">301 <div class="form-group">302 <label>Name</label>303 <input type="text" name="name" value="{{ old("name", $folder->name) }}" class="form-control" placeholder="Name" minlength="2" maxlength="30" required>304 </div>305 </div>306 <div class="col-md-6">307 <div class="form-group">308 <label>Note</label>309 <textarea class="form-control" name="note" maxlength="80">310 {{ old("note", $folder->note) }}311 </textarea>312 </div>313 </div>314 </div>315 <div class="row">316 <div class="col-md-6">317 <input type="file" class="form-control" id="file-item" name="file_item[]" accept="{{ $fileTypes }}" multiple>318 </div>319 </div>320 <br/>321 <div class="modal-footer">322 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close323 </button>324 <button type="submit" class="btn btn-primary">Save changes</button>325 </div>326 </form>327 </div>328 329 </div>330 </div>331 </div>332 333 330 </div> 334 331 -
resources/views/dashboard/folders/index.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "SaveSpace - Folders") 4 5 @section('pageTitle', 'SaveSpace - Folders')6 4 7 5 @section('content') … … 93 91 <a class="dropdown-item" href="{{ URL::current()."?id=".Request::get('id')."&sort=newest" }}">Date</a> 94 92 <a class="dropdown-item" href="{{ URL::current()."?id=".Request::get('id')."&sort=name" }}">Name</a> 93 <a class="dropdown-item" href="{{ URL::current()."?id=".Request::get('id')."&sort=no_of_files" }}">Number of files</a> 95 94 @else 96 95 <a class="dropdown-item" href="{{ URL::current()."?sort=newest" }}">Date</a> 97 96 <a class="dropdown-item" href="{{ URL::current()."?sort=name" }}">Name</a> 97 <a class="dropdown-item" href="{{ URL::current()."?sort=no_of_files" }}">Number of files</a> 98 98 @endif 99 99 </div> … … 240 240 </div> 241 241 242 <div class="modal fade" id="deleteModal_{{$folder->id}}" tabindex="-1" role="dialog" aria-hidden="true"> 243 <div class="modal-dialog modal-dialog-centered" role="document"> 244 <div class="modal-content"> 245 <div class="modal-header"> 246 <h5 class="modal-title" id="exampleModalCenterTitle">Delete confirmation</h5> 247 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 248 <i class="ti-close"></i> 249 </button> 250 </div> 251 <div class="modal-body"> 252 <form action="{{ route("dashboard.folders.destroy", $folder->id) }}" method="POST"> 253 @csrf 254 @method('DELETE') 255 <p>Are you sure you want to delete folder {{$folder->name}} with Archive ID: {{ $folder->arch_id }}?</p> 256 <div class="modal-footer"> 257 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close 258 </button> 259 <button type="submit" class="btn btn-primary">Save changes</button> 260 </div> 261 </form> 262 </div> 263 </div> 264 </div> 265 </div> 266 @empty 267 <div class="col-xl-3 col-lg-4 col-md-6 col-sm-12">No items found</div> 268 @endforelse 269 242 270 <div class="modal fade" id="createModal" tabindex="-1" role="dialog" aria-hidden="true"> 243 271 <div class="modal-dialog modal-dialog-centered modal-lg" role="document"> … … 316 344 </div> 317 345 318 <div class="modal fade" id="deleteModal_{{$folder->id}}" tabindex="-1" role="dialog" aria-hidden="true">319 <div class="modal-dialog modal-dialog-centered" role="document">320 <div class="modal-content">321 <div class="modal-header">322 <h5 class="modal-title" id="exampleModalCenterTitle">Delete confirmation</h5>323 <button type="button" class="close" data-dismiss="modal" aria-label="Close">324 <i class="ti-close"></i>325 </button>326 </div>327 <div class="modal-body">328 <form action="{{ route("dashboard.folders.destroy", $folder->id) }}" method="POST">329 @csrf330 @method('DELETE')331 <p>Are you sure you want to delete folder {{$folder->name}} with Archive ID: {{ $folder->arch_id }}?</p>332 <div class="modal-footer">333 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close334 </button>335 <button type="submit" class="btn btn-primary">Save changes</button>336 </div>337 </form>338 </div>339 </div>340 </div>341 </div>342 @empty343 <div class="col-xl-3 col-lg-4 col-md-6 col-sm-12">No items found</div>344 @endforelse345 346 346 </div> 347 347 @if(!Request::query('search')) -
resources/views/dashboard/index.blade.php
rc6b84df r4b7e2d3 1 1 @extends('layouts.app') 2 2 3 @section("title", "SaveSpace - Dashboard") 4 3 5 @section('head') 4 <!-- Slick -->5 <link rel="stylesheet" href="{{ url('/vendors/slick/slick.css') }}" type="text/css">6 <link rel="stylesheet" href="{{ url('/vendors/slick/slick-theme.css') }}" type="text/css">7 8 <!-- Daterangepicker -->9 <link rel="stylesheet" href="{{ url('vendors/datepicker/daterangepicker.css') }}" type="text/css">10 6 11 7 <!-- DataTable --> 12 8 <link rel="stylesheet" href="{{ url('vendors/dataTable/datatables.min.css') }}" type="text/css"> 13 9 @endsection 14 15 @section('pageTitle', 'Dashboard')16 10 17 11 @section('content') … … 58 52 <div class="d-flex justify-content-between mb-3"> 59 53 <div> 60 <p class="text-muted"> Total Folders</p>54 <p class="text-muted">Number of folders</p> 61 55 <h2 class="font-weight-bold">{{ $folders->count() }}</h2> 62 56 </div> … … 103 97 </div> 104 98 105 <div class="row">106 <div class="col-lg-8 col-md-12">107 <div class="card">108 <div class="card-body">109 <div class="d-flex justify-content-between">110 <h6 class="card-title">Revenue</h6>111 <div>112 <a href="#" class="btn btn-outline-light btn-sm mr-2">113 <i class="fa fa-refresh"></i>114 </a>115 <div class="dropdown">116 <a href="#" data-toggle="dropdown"117 class="btn btn-outline-light btn-sm"118 aria-haspopup="true" aria-expanded="false">119 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>120 </a>121 <div class="dropdown-menu dropdown-menu-right">122 <a class="dropdown-item" href="#">Action</a>123 <a class="dropdown-item" href="#">Another action</a>124 <a class="dropdown-item" href="#">Something else here</a>125 </div>126 </div>127 </div>128 </div>129 <div class="row mb-3">130 <div class="col-lg-4">131 <p class="mb-2">This Week</p>132 <div class="d-flex align-items-end">133 <h2 class="mb-0 line-height-30 font-size-35">$235</h2>134 <span class="text-success small ml-2 d-flex align-items-center">135 <span class="ti-arrow-up mr-2"></span>136 <span class="badge badge-success rounded d-inline-flex align-items-center">1.9%</span>137 </span>138 </div>139 </div>140 <div class="col-lg-4">141 <p class="mb-2">Last Week</p>142 <div class="d-flex align-items-end">143 <h2 class="mb-0 line-height-30 font-size-35">$5,180</h2>144 <span class="text-danger small ml-2 d-flex align-items-center">145 <span class="ti-arrow-down mr-2"></span>146 <span class="badge badge-danger rounded d-inline-flex align-items-center">1.9%</span>147 </span>148 </div>149 </div>150 </div>151 <div id="revenue"></div>152 </div>153 </div>154 155 </div>156 <div class="col-lg-4 col-md-12">157 <div class="card">158 <div class="card-body">159 <div class="d-flex justify-content-between">160 <h6 class="card-title">Hot Products</h6>161 <div>162 <div class="dropdown">163 <a href="#" data-toggle="dropdown"164 class="btn btn-outline-light btn-sm"165 aria-haspopup="true" aria-expanded="false">166 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>167 </a>168 <div class="dropdown-menu dropdown-menu-right">169 <a class="dropdown-item" href="#">Action</a>170 <a class="dropdown-item" href="#">Another action</a>171 <a class="dropdown-item" href="#">Something else here</a>172 </div>173 </div>174 </div>175 </div>176 <div id="hot-products"></div>177 <div>178 <ul class="list-group list-group-flush">179 <li class="list-group-item pl-0 pr-0">180 <i class="fa fa-circle mr-1 text-secondary"></i> Iphone181 </li>182 <li class="list-group-item pl-0 pr-0">183 <i class="fa fa-circle mr-1 text-warning"></i> Samsung184 </li>185 <li class="list-group-item pl-0 pr-0">186 <i class="fa fa-circle mr-1 text-info"></i> Huawei187 </li>188 <li class="list-group-item pl-0 pr-0">189 <i class="fa fa-circle mr-1 text-success"></i> General Mobile190 </li>191 <li class="list-group-item pl-0 pr-0">192 <i class="fa fa-circle mr-1 text-danger"></i> Xiaomi193 </li>194 </ul>195 </div>196 </div>197 </div>198 </div>199 </div>200 99 201 100 <div class="card"> 202 101 <div class="card-body"> 203 102 <div class="d-flex justify-content-between"> 204 <h6 class="card-title">Recent Orders</h6>103 <h6 class="card-title">Recent Files</h6> 205 104 <div> 206 <a href=" #" class="btn btn-outline-light btn-sm mr-2">105 <a href="{{route("dashboard.index")}}" class="btn btn-outline-light btn-sm mr-2"> 207 106 <i class="fa fa-refresh"></i> 208 107 </a> 209 <div class="dropdown">210 <a href="#" data-toggle="dropdown"211 class="btn btn-outline-light btn-sm"212 aria-haspopup="true" aria-expanded="false">213 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>214 </a>215 <div class="dropdown-menu dropdown-menu-right">216 <a class="dropdown-item" href="#">Action</a>217 <a class="dropdown-item" href="#">Another action</a>218 <a class="dropdown-item" href="#">Something else here</a>219 </div>220 </div>221 108 </div> 222 109 </div> … … 227 114 <thead> 228 115 <tr> 229 <th>ID</th> 230 <th>Product Name</th> 231 <th>Customer</th> 232 <th>Total Price</th> 233 <th>Status</th> 234 <th>Date</th> 235 <th>Action</th> 116 <th> 117 </th> 118 <th>Image</th> 119 <th>Name</th> 120 <th>Created at</th> 121 <th>Updated at</th> 122 <th>Folder name</th> 123 <th>Folder archive ID</th> 124 <th>Directory</th> 125 <th>Actions</th> 236 126 </tr> 237 127 </thead> 238 128 <tbody> 239 <tr> 240 <td> 241 <a href="#">3145</a> 242 </td> 243 <td> 244 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 245 <img width="40" src="{{ url('assets/media/image/products/product1.png') }}" 246 class="rounded mr-3" alt="grape"> 247 <span>HP Pavilion 15-EC0005NT AMD</span> 248 </a> 249 </td> 250 <td>Dollie Bullock</td> 251 <td>$230</td> 252 <td> 253 <span 254 class="badge bg-secondary-bright text-secondary">On pre-order (not paid)</span> 255 </td> 256 <td>2018/08/28 21:24:36</td> 257 <td> 258 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 259 <i class="ti-pencil"></i> 260 </a> 261 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 262 <i class="ti-trash"></i> 263 </a> 264 </td> 265 </tr> 266 <tr> 267 <td> 268 <a href="#">7321</a> 269 </td> 270 <td> 271 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 272 <img width="40" src="{{ url('assets/media/image/products/product2.png') }}" 273 class="rounded mr-3" alt="banana"> 274 <span>Samsung Galaxy A51 128 GB</span> 275 </a> 276 </td> 277 <td>Holmes Hines</td> 278 <td>$300</td> 279 <td> 280 <span class="badge bg-success-bright text-success">Payment accepted</span> 281 </td> 282 <td>2018/08/28 21:24:36</td> 283 <td> 284 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 285 <i class="ti-pencil"></i> 286 </a> 287 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 288 <i class="ti-trash"></i> 289 </a> 290 </td> 291 </tr> 292 <tr> 293 <td> 294 <a href="#">9342</a> 295 </td> 296 <td> 297 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 298 <img width="40" src="{{ url('assets/media/image/products/product3.png') }}" 299 class="rounded mr-3" alt="cherry"> 300 <span>Snopy SN-BT96 Pretty</span> 301 </a> 302 </td> 303 <td>Serena Glover</td> 304 <td>$250</td> 305 <td> 306 <span class="badge bg-danger-bright text-danger">Payment error</span> 307 </td> 308 <td>2018/08/28 21:24:36</td> 309 <td> 310 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 311 <i class="ti-pencil"></i> 312 </a> 313 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 314 <i class="ti-trash"></i> 315 </a> 316 </td> 317 </tr> 318 <tr> 319 <td> 320 <a href="#">6416</a> 321 </td> 322 <td> 323 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 324 <img width="40" src="{{ url('assets/media/image/products/product4.png') }}" 325 class="rounded mr-3" alt="papaya"> 326 <span>Ultimate Ears Wonderboom</span> 327 </a> 328 </td> 329 <td>Dianne Prince</td> 330 <td>$550</td> 331 <td> 332 <span class="badge bg-success-bright text-success">Payment accepted</span> 333 </td> 334 <td>2018/08/28 21:24:36</td> 335 <td> 336 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 337 <i class="ti-pencil"></i> 338 </a> 339 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 340 <i class="ti-trash"></i> 341 </a> 342 </td> 343 </tr> 344 <tr> 345 <td> 346 <a href="#">92327</a> 347 </td> 348 <td> 349 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 350 <img width="40" src="{{ url('assets/media/image/products/product5.png') }}" 351 class="rounded mr-3" alt="pig"> 352 <span>Canon Pixma E3140 Printer</span> 353 </a> 354 </td> 355 <td>Morgan Pitts</td> 356 <td>$280</td> 357 <td> 358 <span class="badge bg-warning-bright text-warning">Preparing the order</span> 359 </td> 360 <td>2018/08/28 21:24:36</td> 361 <td> 362 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 363 <i class="ti-pencil"></i> 364 </a> 365 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 366 <i class="ti-trash"></i> 367 </a> 368 </td> 369 </tr> 370 <tr> 371 <td> 372 <a href="#">3013</a> 373 </td> 374 <td> 375 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 376 <img width="40" src="{{ url('assets/media/image/products/product6.png') }}" 377 class="rounded mr-3" alt="pineapple"> 378 <span>Canon 4000D 18-55 MM</span> 379 </a> 380 </td> 381 <td>Merrill Richardson</td> 382 <td>$128</td> 383 <td> 384 <span class="badge bg-info-bright text-info">Awaiting PayPal payment</span> 385 </td> 386 <td>2018/08/28 21:24:36</td> 387 <td> 388 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 389 <i class="ti-pencil"></i> 390 </a> 391 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 392 <i class="ti-trash"></i> 393 </a> 394 </td> 395 </tr> 396 <tr> 397 <td> 398 <a href="#">10323</a> 399 </td> 400 <td> 401 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 402 <img width="40" src="{{ url('assets/media/image/products/product7.png') }}" 403 class="rounded mr-3" alt="pomegranate"> 404 <span>Lenovo Tab E10 TB-X104F 32GB 10.1"</span> 405 </a> 406 </td> 407 <td>Krista Mathis</td> 408 <td>$500</td> 409 <td> 410 <span class="badge bg-secondary-bright text-secondary">Shipped</span> 411 </td> 412 <td>2018/08/28 21:24:36</td> 413 <td> 414 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 415 <i class="ti-pencil"></i> 416 </a> 417 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 418 <i class="ti-trash"></i> 419 </a> 420 </td> 421 </tr> 422 <tr> 423 <td> 424 <a href="#">4218</a> 425 </td> 426 <td> 427 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 428 <img width="40" src="{{ url('assets/media/image/products/product8.png') }}" 429 class="rounded mr-3" alt="raspberry"> 430 <span>Samsung 55Q60RAT 55"</span> 431 </a> 432 </td> 433 <td>Frankie Hewitt</td> 434 <td>$300</td> 435 <td> 436 <span class="badge bg-success-bright text-success">Remote payment accepted</span> 437 </td> 438 <td>2018/08/28 21:24:36</td> 439 <td> 440 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 441 <i class="ti-pencil"></i> 442 </a> 443 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 444 <i class="ti-trash"></i> 445 </a> 446 </td> 447 </tr> 448 <tr> 449 <td> 450 <a href="#">3158</a> 451 </td> 452 <td> 453 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 454 <img width="40" src="{{ url('assets/media/image/products/product9.png') }}" 455 class="rounded mr-3" alt="strawberry"> 456 <span>Toshiba Canvio Basic 1TB 2.5"</span> 457 </a> 458 </td> 459 <td>Hayden Fitzgerald</td> 460 <td>$200</td> 461 <td> 462 <span class="badge bg-success-bright text-success">Delivered</span> 463 </td> 464 <td>2018/08/28 21:24:36</td> 465 <td> 466 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 467 <i class="ti-pencil"></i> 468 </a> 469 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 470 <i class="ti-trash"></i> 471 </a> 472 </td> 473 </tr> 474 <tr> 475 <td> 476 <a href="#">9610</a> 477 </td> 478 <td> 479 <a href="testproduct-detail') }}" class="d-flex align-items-center"> 480 <img width="40" src="{{ url('assets/media/image/products/product10.png') }}" 481 class="rounded mr-3" alt="watermelon"> 482 <span>Fms Wireless Controller</span> 483 </a> 484 </td> 485 <td>Cole Holcomb</td> 486 <td>$700</td> 487 <td> 488 <span 489 class="badge bg-secondary-bright text-secondary">On pre-order (not paid)</span> 490 </td> 491 <td>2018/08/28 21:24:36</td> 492 <td> 493 <a href="#" class="text-secondary" data-toggle="tooltip" title="Edit"> 494 <i class="ti-pencil"></i> 495 </a> 496 <a href="#" class="text-danger ml-2" data-toggle="tooltip" title="Delete"> 497 <i class="ti-trash"></i> 498 </a> 499 </td> 500 </tr> 129 @foreach($recentFiles as $file) 130 <tr> 131 <td></td> 132 <td> 133 @if(in_array(explode('.', $file->name)[1], $excelExt)) 134 <div class="col-xl-1 col-lg-1 col-md-1 col-sm-2"> 135 <i class="fa fa-file-excel-o text-success fa-2x"></i> 136 </div> 137 @else @if(in_array(explode('.', $file->name)[1], $textExt)) 138 <div class="col-xl-1 col-lg-1 col-md-1 col-sm-2"> 139 <i class="fa fa-file-word-o text-info fa-2x"></i> 140 </div> 141 @else @if(explode('.', $file->name)[1] == 'pdf') 142 <div class="col-xl-1 col-lg-1 col-md-1 col-sm-2"> 143 <i class="fa fa-file-pdf-o text-danger fa-2x"></i> 144 </div> 145 @else @if(in_array(explode('.', $file->name)[1], $imageExt)) 146 <div class="col-xl-1 col-lg-1 col-md-1 col-sm-2"> 147 <a href="{{ url('/uploads/' . $file->location) }}" class="image-popup-gallery-item"> 148 <div class="image-hover"> 149 <img src="{{ url('/uploads/' . $file->location) }}" class="rounded" width="30" alt="image"> 150 </div> 151 </a> 152 </div> 153 @else 154 <div class="col-xl-1 col-lg-1 col-md-1 col-sm-2"> 155 <i class="fa fa-file-text-o text-warning fa-2x"></i> 156 </div> 157 @endif 158 @endif 159 @endif 160 @endif 161 162 163 </td> 164 <td>{{ $file->name }}</td> 165 <td>{{ date('d.m.Y - H:i', strtotime($file->created_at)) }}</td> 166 @if($file->updated_at==NULL) 167 <td>/</td> 168 @else 169 <td>{{ date('d.m.Y - H:i', strtotime($file->updated_at)) }}</td> 170 @endif 171 <td><a href="{{ route('dashboard.folders.files', ['id' => $file->folder_id]) }}" class="text-linkedin">{{ \App\Models\Folder::find($file->folder_id)->name }}</a></td> 172 <td>{{ \App\Models\Folder::find($file->folder_id)->arch_id }}</td> 173 <!-- Trigger --> 174 <td><button data-clipboard-text="{{$file->location}}" class="btn btn-sm btn-primary text-white" data-toggle="tooltip" data-placement="right" title="{{$file->location}}"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16"> 175 <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/> 176 <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/> 177 </svg></button> 178 </td> 179 <td> 180 <a href="javascript:void(0)" class="text-secondary" data-toggle="modal" data-target="#editModal_{{$file->id}}" title="Edit"> 181 <i class="ti-pencil"></i> 182 </a> 183 <a href="{{ route("dashboard.files.downloadFile", ['id' => $file->id]) }}" class="text-danger ml-2"title="Download"> 184 <i class="ti-download"></i> 185 </a> 186 <a href="javascript:void(0)" class="text-danger ml-2" data-toggle="modal" data-target="#deleteModal_{{$file->id}}" title="Delete"> 187 <i class="ti-trash"></i> 188 </a> 189 </td> 190 </tr> 191 <div class="modal fade" id="deleteModal_{{$file->id}}" tabindex="-1" role="dialog" aria-hidden="true"> 192 <div class="modal-dialog modal-dialog-centered" role="document"> 193 <div class="modal-content"> 194 <div class="modal-header"> 195 <h5 class="modal-title" id="exampleModalCenterTitle">Delete confirmation</h5> 196 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 197 <i class="ti-close"></i> 198 </button> 199 </div> 200 <div class="modal-body"> 201 <form action="{{ route("dashboard.files.deleteFile", $file->id) }}" method="POST"> 202 @csrf 203 @method('DELETE') 204 <p>Are you sure you want to delete file {{$file->name}}?</p> 205 <p>Location: <span class="pr-1">{{$file->location}}</span></p> 206 <div class="modal-footer"> 207 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close 208 </button> 209 <button type="submit" class="btn btn-primary">Save changes</button> 210 </div> 211 </form> 212 </div> 213 214 </div> 215 </div> 216 </div> 217 218 <div class="modal fade" id="editModal_{{$file->id}}" tabindex="-1" role="dialog" aria-hidden="true"> 219 <div class="modal-dialog modal-dialog-centered" role="document"> 220 <div class="modal-content"> 221 <div class="modal-header"> 222 <h5 class="modal-title" id="exampleModalCenterTitle">Rename file</h5> 223 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 224 <i class="ti-close"></i> 225 </button> 226 </div> 227 <div class="modal-body"> 228 <form action="{{ route("dashboard.files.renameFile", ["id" =>$file->id]) }}" method="post" accept-charset="utf-8"> 229 @method("patch") 230 @csrf 231 <div class="row"> 232 <div class="col-md-12"> 233 <div class="form-group"> 234 <label class="form-label">Current name: {{$file->name}}</label> 235 <input type="text" name="name" value="{{ explode('.', $file->name)[0] }}" maxlength="255" title="Don't include: '\/.|'" pattern="^[^.\/|]+$" class="form-control" required> 236 </div> 237 </div> 238 </div> 239 <br/> 240 <div class="modal-footer"> 241 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close 242 </button> 243 <button type="submit" class="btn btn-primary">Save changes</button> 244 </div> 245 </form> 246 </div> 247 248 </div> 249 </div> 250 </div> 251 @endforeach 501 252 </tbody> 502 253 </table> … … 512 263 <div class="card-body"> 513 264 <div class="d-md-flex mb-2 mb-sm-0 justify-content-between"> 514 <h6 class="card-title">Activities</h6> 515 <div> 516 <div id="reportrange" class="form-control"> 517 <span></span> 518 </div> 519 </div> 520 </div> 521 <div id="ecommerce-activity-chart"></div> 265 <canvas id="canvas"></canvas> 266 </div> 522 267 </div> 523 268 </div> … … 527 272 <div class="card-body pb-0"> 528 273 <div class="d-flex justify-content-between align-items-start mb-3"> 529 <h6 class="card-title mb-0"> Top Sales</h6>530 <a href=" #" class="small">All Sales</a>274 <h6 class="card-title mb-0">Largest departments</h6> 275 <a href="{{route("dashboard.departments.index")}}" class="small text-linkedin">View</a> 531 276 </div> 532 277 </div> … … 535 280 <thead> 536 281 <tr> 537 <th> Product</th>538 <th> Total Sales</th>282 <th>Department</th> 283 <th>Number of folders</th> 539 284 </tr> 540 285 </thead> 541 286 <tbody> 287 @foreach($largestDepartments as $department) 542 288 <tr> 289 543 290 <td> 544 <a href="#"> Apple</a>291 <a href="#">{{$department->name}}</a> 545 292 </td> 546 <td>21</td> 293 <td> 294 <a href="#">{{$department->no_of_folders}}</a> 295 </td> 547 296 </tr> 548 <tr> 549 <td> 550 <a href="#">Samsung <span class="badge badge-danger ml-1">New</span></a> 551 </td> 552 <td>52</td> 553 </tr> 554 <tr> 555 <td> 556 <a href="#">Huawei</a> 557 </td> 558 <td>74</td> 559 </tr> 560 <tr> 561 <td> 562 <a href="#">General Mobile</a> 563 </td> 564 <td>25</td> 565 </tr> 566 <tr> 567 <td> 568 <a href="#">Xiaomi</a> 569 </td> 570 <td>11</td> 571 </tr> 572 <tr> 573 <td> 574 <a href="#">Nokia</a> 575 </td> 576 <td>8</td> 577 </tr> 578 <tr> 579 <td> 580 <a href="#">Sony</a> 581 </td> 582 <td>5</td> 583 </tr> 584 <tr> 585 <td> 586 <a href="#">Alcatel</a> 587 </td> 588 <td>5</td> 589 </tr> 297 @endforeach 590 298 </tbody> 591 299 </table> … … 594 302 </div> 595 303 </div> 596 597 <div class="row">598 <div class="col-md-6">599 <div class="card">600 <div class="card-body">601 <h6 class="card-title d-flex justify-content-between">602 <span>Income Distribution</span>603 <span class="dropdown">604 <a class="btn btn-outline-light btn-sm dropdown-toggle" href="#"605 data-toggle="dropdown">USA</a>606 <span class="dropdown-menu dropdown-menu-right">607 <a href="#" class="dropdown-item">USA</a>608 <a href="#" class="dropdown-item">Germany</a>609 <a href="#" class="dropdown-item">France</a>610 <a href="#" class="dropdown-item">Italy</a>611 </span>612 </span>613 </h6>614 <div id="vmap_usa_en" style="height: 300px"></div>615 </div>616 <div class="table-responsive">617 <table class="table table-borderless table-lg table-striped mb-0">618 <thead>619 <tr>620 <th class="wd-40">States</th>621 <th class="wd-25 text-center">Orders</th>622 <th class="wd-35 text-center">Earnings</th>623 <th class="wd-35"></th>624 </tr>625 </thead>626 <tbody>627 <tr>628 <td>California</td>629 <td class="text-center">12,201</td>630 <td class="text-center text-success">$150,200.80</td>631 <td class="text-right">632 <a href="#" data-toggle="tooltip" title="Detail">633 <i class="fa fa-external-link"></i>634 </a>635 </td>636 </tr>637 <tr>638 <td>Texas</td>639 <td class="text-center">11,950</td>640 <td class="text-center text-success">$138,910.20</td>641 <td class="text-right">642 <a href="#" data-toggle="tooltip" title="Detail">643 <i class="fa fa-external-link"></i>644 </a>645 </td>646 </tr>647 <tr>648 <td>Wyoming</td>649 <td class="text-center">11,198</td>650 <td class="text-center text-danger">$132,050.00</td>651 <td class="text-right">652 <a href="#" data-toggle="tooltip" title="Detail">653 <i class="fa fa-external-link"></i>654 </a>655 </td>656 </tr>657 <tr>658 <td>Florida</td>659 <td class="text-center">9,885</td>660 <td class="text-center text-success">$127,762.10</td>661 <td class="text-right">662 <a href="#" data-toggle="tooltip" title="Detail">663 <i class="fa fa-external-link"></i>664 </a>665 </td>666 </tr>667 <tr>668 <td>New York</td>669 <td class="text-center">21,198</td>670 <td class="text-center text-danger">$432,410.00</td>671 <td class="text-right">672 <a href="#" data-toggle="tooltip" title="Detail">673 <i class="fa fa-external-link"></i>674 </a>675 </td>676 </tr>677 <tr>678 <td>Montana</td>679 <td class="text-center">2,885</td>680 <td class="text-center text-success">$7,100.00</td>681 <td class="text-right">682 <a href="#" data-toggle="tooltip" title="Detail">683 <i class="fa fa-external-link"></i>684 </a>685 </td>686 </tr>687 </tbody>688 </table>689 </div>690 </div>691 </div>692 <div class="col-md-6">693 <div class="card">694 <div class="card-body">695 <div class="card-title d-flex justify-content-between">696 <h6 class="card-title">Revenue by Country</h6>697 <div>698 <a href="#" class="btn btn-outline-light btn-sm mr-2">699 <i class="fa fa-refresh"></i>700 </a>701 <div class="dropdown">702 <a href="#" data-toggle="dropdown"703 class="btn btn-outline-light btn-sm"704 aria-haspopup="true" aria-expanded="false">705 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>706 </a>707 <div class="dropdown-menu dropdown-menu-right">708 <a class="dropdown-item" href="#">Action</a>709 <a class="dropdown-item" href="#">Another action</a>710 <a class="dropdown-item" href="#">Something else here</a>711 </div>712 </div>713 </div>714 </div>715 <p>Total Revenue</p>716 <h2 class="mb-4 font-size-35">$469,453</h2>717 <div class="progress mb-3" style="height: 10px">718 <div class="progress-bar w-25 bg-secondary-gradient" role="progressbar"></div>719 <div class="progress-bar w-50 bg-info-gradient" role="progressbar"></div>720 <div class="progress-bar w-25 bg-warning-gradient" role="progressbar"></div>721 <div class="progress-bar w-25 bg-success-gradient" role="progressbar"></div>722 <div class="progress-bar w-50 bg-danger-gradient" role="progressbar"></div>723 </div>724 </div>725 <div class="p-4 bg-dark-gradient">726 <ul class="list-inline ">727 <li class="list-inline-item mr-4 mb-3">728 <div class="d-flex align-items-center">729 <span class="d-inline-flex align-items-center">730 <i class="fa fa-circle text-secondary mr-1 small"></i> Russia731 </span>732 <small class="ml-3 text-success d-inline-flex align-items-center">733 <i class="fa fa-caret-up mr-1"></i> 40%734 </small>735 </div>736 </li>737 <li class="list-inline-item mr-4 mb-3">738 <div class="d-flex align-items-center">739 <span class="d-inline-flex align-items-center">740 <i class="fa fa-circle text-info mr-1 small"></i> Australia741 </span>742 <small class="ml-3 text-danger d-inline-flex align-items-center">743 <i class="fa fa-caret-down mr-1"></i> 25%744 </small>745 </div>746 </li>747 <li class="list-inline-item mr-4 mb-3">748 <div class="d-flex align-items-center">749 <span class="d-inline-flex align-items-center">750 <i class="fa fa-circle text-warning mr-1 small"></i> China751 </span>752 <small class="ml-3 text-success d-inline-flex align-items-center">753 <i class="fa fa-caret-up mr-1"></i> 30%754 </small>755 </div>756 </li>757 <li class="list-inline-item mr-4 mb-3">758 <div class="d-flex align-items-center">759 <span class="d-inline-flex align-items-center">760 <i class="fa fa-circle text-success mr-1 small"></i> Tunisia761 </span>762 <small class="ml-3 text-success d-inline-flex align-items-center">763 <i class="fa fa-caret-up mr-1"></i> 10%764 </small>765 </div>766 </li>767 <li class="list-inline-item mr-4 mb-3">768 <div class="d-flex align-items-center">769 <span class="d-inline-flex align-items-center">770 <i class="fa fa-circle text-success mr-1 small"></i> Spain771 </span>772 <small class="ml-3 text-danger d-inline-flex align-items-center">773 <i class="fa fa-caret-down mr-1"></i> 10%774 </small>775 </div>776 </li>777 </ul>778 </div>779 </div>780 <div class="card">781 <div class="card-body">782 <h6 class="card-title">Reviews</h6>783 <div class="card-scroll">784 <ul class="list-group list-group-flush">785 <li class="list-group-item d-flex pl-0 pr-0">786 <a href="#">787 <figure class="avatar mr-3">788 <img src="{{ url('assets/media/image/user/man_avatar1.jpg') }}" class="rounded-circle" alt="image">789 </figure>790 </a>791 <div>792 <div class="d-flex justify-content-between">793 <a href="#">794 <h6>Valentine Maton</h6>795 <ul class="list-inline mb-1">796 <li class="list-inline-item mb-0">797 <i class="fa fa-star text-warning"></i>798 </li>799 <li class="list-inline-item mb-0">800 <i class="fa fa-star text-warning"></i>801 </li>802 <li class="list-inline-item mb-0">803 <i class="fa fa-star text-warning"></i>804 </li>805 <li class="list-inline-item mb-0">806 <i class="fa fa-star text-warning"></i>807 </li>808 <li class="list-inline-item mb-0">809 <i class="fa fa-star text-warning"></i>810 </li>811 <li class="list-inline-item mb-0">(5)</li>812 </ul>813 </a>814 <div class="ml-auto">815 <div class="dropdown">816 <a href="#" data-toggle="dropdown"817 class="btn btn-outline-light btn-sm"818 aria-haspopup="true" aria-expanded="false">819 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>820 </a>821 <div class="dropdown-menu dropdown-menu-right">822 <a href="#" class="dropdown-item">View</a>823 <a href="#" class="dropdown-item">Send Message</a>824 </div>825 </div>826 </div>827 </div>828 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio, tempora.</p>829 </div>830 </li>831 <li class="list-group-item d-flex pl-0 pr-0">832 <a href="#">833 <figure class="avatar mr-3">834 <img src="{{ url('assets/media/image/user/man_avatar2.jpg') }}" class="rounded-circle" alt="image">835 </figure>836 </a>837 <div>838 <div class="d-flex justify-content-between">839 <a href="#">840 <h6>Valentine Maton</h6>841 <ul class="list-inline mb-1">842 <li class="list-inline-item mb-0">843 <i class="fa fa-star text-warning"></i>844 </li>845 <li class="list-inline-item mb-0">846 <i class="fa fa-star text-warning"></i>847 </li>848 <li class="list-inline-item mb-0">849 <i class="fa fa-star text-warning"></i>850 </li>851 <li class="list-inline-item mb-0">852 <i class="fa fa-star-half-o text-warning"></i>853 </li>854 <li class="list-inline-item mb-0">855 <i class="fa fa-star-o"></i>856 </li>857 <li class="list-inline-item mb-0">(3.5)</li>858 </ul>859 </a>860 <div class="ml-auto">861 <div class="dropdown">862 <a href="#" data-toggle="dropdown"863 class="btn btn-outline-light btn-sm"864 aria-haspopup="true" aria-expanded="false">865 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>866 </a>867 <div class="dropdown-menu dropdown-menu-right">868 <a href="#" class="dropdown-item">View</a>869 <a href="#" class="dropdown-item">Send Message</a>870 </div>871 </div>872 </div>873 </div>874 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio, tempora.</p>875 </div>876 </li>877 <li class="list-group-item d-flex pl-0 pr-0">878 <a href="#">879 <figure class="avatar mr-3">880 <img src="{{ url('assets/media/image/user/man_avatar3.jpg') }}" class="rounded-circle" alt="image">881 </figure>882 </a>883 <div>884 <div class="d-flex justify-content-between">885 <a href="#">886 <h6>Valentine Maton</h6>887 <ul class="list-inline mb-1">888 <li class="list-inline-item mb-0">889 <i class="fa fa-star text-warning"></i>890 </li>891 <li class="list-inline-item mb-0">892 <i class="fa fa-star text-warning"></i>893 </li>894 <li class="list-inline-item mb-0">895 <i class="fa fa-star text-warning"></i>896 </li>897 <li class="list-inline-item mb-0">898 <i class="fa fa-star text-warning"></i>899 </li>900 <li class="list-inline-item mb-0">901 <i class="fa fa-star-half-o text-warning"></i>902 </li>903 <li class="list-inline-item mb-0">(4.5)</li>904 </ul>905 </a>906 <div class="ml-auto">907 <div class="dropdown">908 <a href="#" data-toggle="dropdown"909 class="btn btn-outline-light btn-sm"910 aria-haspopup="true" aria-expanded="false">911 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>912 </a>913 <div class="dropdown-menu dropdown-menu-right">914 <a href="#" class="dropdown-item">View</a>915 <a href="#" class="dropdown-item">Send Message</a>916 </div>917 </div>918 </div>919 </div>920 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio, tempora.</p>921 </div>922 </li>923 <li class="list-group-item d-flex pl-0 pr-0">924 <a href="#">925 <figure class="avatar mr-3">926 <img src="{{ url('assets/media/image/user/man_avatar4.jpg') }}" class="rounded-circle" alt="image">927 </figure>928 </a>929 <div>930 <div class="d-flex justify-content-between">931 <a href="#">932 <h6>Valentine Maton</h6>933 <ul class="list-inline mb-1">934 <li class="list-inline-item mb-0">935 <i class="fa fa-star text-warning"></i>936 </li>937 <li class="list-inline-item mb-0">938 <i class="fa fa-star text-warning"></i>939 </li>940 <li class="list-inline-item mb-0">941 <i class="fa fa-star text-warning"></i>942 </li>943 <li class="list-inline-item mb-0">944 <i class="fa fa-star text-warning"></i>945 </li>946 <li class="list-inline-item mb-0">947 <i class="fa fa-star-o"></i>948 </li>949 <li class="list-inline-item mb-0">(4)</li>950 </ul>951 </a>952 <div class="ml-auto">953 <div class="dropdown">954 <a href="#" data-toggle="dropdown"955 class="btn btn-outline-light btn-sm"956 aria-haspopup="true" aria-expanded="false">957 <i class="fa fa-ellipsis-h" aria-hidden="true"></i>958 </a>959 <div class="dropdown-menu dropdown-menu-right">960 <a href="#" class="dropdown-item">View</a>961 <a href="#" class="dropdown-item">Send Message</a>962 </div>963 </div>964 </div>965 </div>966 <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odio, tempora.</p>967 </div>968 </li>969 </ul>970 </div>971 <div class="mt-3 text-center">972 <a href="#" class="btn btn-primary">973 View All974 </a>975 </div>976 </div>977 </div>978 979 </div>980 </div>981 982 304 @endsection 983 305 … … 1019 341 1020 342 <script src="{{ url('assets/js/examples/pages/ecommerce-dashboard.js') }}"></script> 1021 343 <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.min.js"></script> 344 <script> 345 var year = <?php echo $year; ?>; 346 var file = <?php echo $file; ?>; 347 var barChartData = { 348 labels: year, 349 datasets: [{ 350 label: 'File', 351 backgroundColor: "red", 352 data: file 353 }] 354 }; 355 356 window.onload = function() { 357 var ctx = document.getElementById("canvas").getContext("2d"); 358 window.myBar = new Chart(ctx, { 359 type: 'bar', 360 data: barChartData, 361 options: { 362 elements: { 363 rectangle: { 364 borderWidth: 2, 365 borderColor: '#c1c1c1', 366 borderSkipped: 'bottom' 367 } 368 }, 369 responsive: true, 370 title: { 371 display: true, 372 text: 'Yearly uploaded files' 373 } 374 } 375 }); 376 }; 377 </script> 1022 378 @endsection -
resources/views/dashboard/notifications/index.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "SaveSpace - Users") 4 5 @section('pageTitle', 'Users')6 4 7 5 @section('head') -
resources/views/dashboard/settings/index.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "User Settings") 4 5 @section('pageTitle', 'User Settings')6 4 7 5 @section('content') -
resources/views/dashboard/users/index.blade.php
rc6b84df r4b7e2d3 2 2 3 3 @section("title", "SaveSpace - Users") 4 5 @section('pageTitle', 'Users')6 4 7 5 @section('head') … … 42 40 <th>Username</th> 43 41 <th>Name</th> 44 <th>Email</th>45 <th>Phone Number</th>46 42 <th>Created by</th> 47 43 <th>Created at</th> 48 44 <th>Updated at</th> 49 <th>Role</th>50 45 <th>Status</th> 51 46 <th>Actions</th> … … 71 66 {{$user->username}} 72 67 </td> 73 <td>{{$user->name .' '. $user->surname}}</td> 74 <td>{{$user->email}}</td> 75 <td>{{$user->phone_number}}</td> 68 <td>{{$user->name .' '. $user->surname}} 69 <div class="font-weight-light p-1">{{$user->role->name}}</div> 70 <div class="font-weight-light p-1">{{$user->email}}</div> 71 <div class="font-weight-light p-1">{{$user->phone_number}}</div> 72 </td> 76 73 <td>{{ $user->getCreatedByName() }}</td> 77 74 <td>{{ date('d.m.Y - H:i', strtotime($user->created_at)) }}</td> … … 81 78 <td>{{ date('d.m.Y - H:i', strtotime($user->updated_at)) }}</td> 82 79 @endif 83 <td>{{ $user->role->name }}</td>84 80 <td> 85 81 @if(Cache::has('is_online' . $user->id)) … … 99 95 </td> 100 96 @else 101 <td> Admin</td>97 <td>/</td> 102 98 @endif 103 99 </tr> -
resources/views/layouts/app.blade.php
rc6b84df r4b7e2d3 5 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 6 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <meta name="csrf-token" content="{{ csrf_token() }}"> 7 8 <title>@yield('title')</title> 8 9 … … 18 19 <link rel="stylesheet" href="{{ url('assets/css/app.min.css') }}" type="text/css"> 19 20 <link rel="stylesheet" href="{{ url('vendors/lightbox/magnific-popup.css') }}" type="text/css"> 21 20 22 21 23 </head> … … 125 127 <!-- begin::header notification dropdown --> 126 128 <li class="nav-item dropdown"> 127 <div class="dropdown dropdown-notifications-wrapper dropdown-menu-right dropdown-menu-big"> 128 <a href="javascript:void(0)" class="nav-link dropdown-notifications-unread icon" data-toggle="dropdown"> 129 <i data-feather="bell"></i> 130 <span class="nav-unread"></span> 131 </a> 132 <div class="dropdown-menu dropdown-notifications dropdown-menu-right dropdown-menu-big"> 133 <div class="bg-dark p-4 text-center d-flex justify-content-between align-items-center"> 134 <h5 class="mb-0">Notifications</h5> 129 {{-- <div class="dropdown dropdown-notifications-wrapper dropdown-menu-right dropdown-menu-big">--}} 130 {{-- <a href="javascript:void(0)" class="nav-link dropdown-notifications-unread icon" data-toggle="dropdown">--}} 131 {{-- <i data-feather="bell"></i>--}} 132 {{-- <span class="nav-unread"></span>--}} 133 {{-- </a>--}} 134 {{-- <div class="dropdown-menu dropdown-notifications dropdown-menu-right dropdown-menu-big">--}} 135 {{-- <div class="bg-dark p-4 text-center d-flex justify-content-between align-items-center">--}} 136 {{-- <h5 class="mb-0">Notifications</h5>--}} 137 {{-- </div>--}} 138 {{-- <div class="p-4 text-center align-items-center">--}} 139 {{-- <p class='text-center unreadNotificationsInfo'>No unread notifications</p>--}} 140 {{-- </div>--}} 141 {{-- <div class="dropdown-divider"></div>--}} 142 {{-- <a href="{{ route("dashboard.notifications.index") }}" class="dropdown-item text-center text-muted-dark">See all</a>--}} 143 {{-- </div>--}} 144 {{-- </div>--}} 145 146 <div class="dropdown dropdown-notifications-wrapper d-none d-md-flex"> 147 <a class="nav-link dropdown-notifications-unread icon" data-toggle="dropdown"> 148 <i class="fe fe-bell"></i> 149 <span class="nav-unread"></span> 150 </a> 151 <div class="dropdown-menu dropdown-notifications dropdown-menu-right dropdown-menu-arrow"> 152 <p class='text-center unreadNotificationsInfo'>No unread notifications</p> 153 <div class="dropdown-divider"></div> 154 <a href="{{ route("dashboard.notifications.index") }}" class="dropdown-item text-center text-muted-dark">See all</a> 135 155 </div> 136 <div class="p-4 text-center align-items-center">137 <p class='text-center unreadNotificationsInfo'>No unread notifications</p>138 </div>139 <div class="dropdown-divider"></div>140 <a href="{{ route("dashboard.notifications.index") }}" class="dropdown-item text-center text-muted-dark">See all</a>141 156 </div> 142 </div>143 157 </li> 144 158 -
routes/web.php
rc6b84df r4b7e2d3 85 85 Route::get('/departments/download-all','Dashboard\DepartmentsController@downloadAll')->name('dashboard.departments.downloadAll'); 86 86 Route::get('/departments/{id}/download-department','Dashboard\DepartmentsController@downloadDepartment')->name('dashboard.departments.downloadDepartment'); 87 Route::get('departments/export', 'Dashboard\ExportExcelController@ExportDepartments')->name("dashboard.departments.export"); 87 88 }); 88 89
Note:
See TracChangeset
for help on using the changeset viewer.