diff --git a/.gitignore b/.gitignore index a7a2d10..cbc1634 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +/public/js/app.js /node_modules /public/hot /public/storage diff --git a/app/Http/Controllers/ApplicationController.php b/app/Http/Controllers/ApplicationController.php index 4b76111..a13c323 100644 --- a/app/Http/Controllers/ApplicationController.php +++ b/app/Http/Controllers/ApplicationController.php @@ -22,4 +22,9 @@ class ApplicationController extends Controller return view('dashboard.user.approvedapplications'); } + public function showAllPendingApps() + { + return view('dashboard.appmanagement.outstandingapps'); + } + } diff --git a/package-lock.json b/package-lock.json index 01d75a2..1040128 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2092,6 +2092,32 @@ "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", "dev": true }, + "chart.js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.9.3.tgz", + "integrity": "sha512-+2jlOobSk52c1VU6fzkh3UwqHMdSlgH1xFv9FKMqHiNCpXsGPQa/+81AFa+i3jZ253Mq9aAycPwDjnn1XbRNNw==", + "requires": { + "chartjs-color": "^2.1.0", + "moment": "^2.10.2" + } + }, + "chartjs-color": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.4.1.tgz", + "integrity": "sha512-haqOg1+Yebys/Ts/9bLo/BqUcONQOdr/hoEr2LLTRl6C5LXctUdHxsCYfvQVg5JIxITrfCNUDr4ntqmQk9+/0w==", + "requires": { + "chartjs-color-string": "^0.6.0", + "color-convert": "^1.9.3" + } + }, + "chartjs-color-string": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.6.0.tgz", + "integrity": "sha512-TIB5OKn1hPJvO7JcteW4WY/63v6KwEdt6udfnDE9iCAZgy+V4SrbSxoIbTw/xkUIapjEI4ExGtD0+6D3KyFd7A==", + "requires": { + "color-name": "^1.0.0" + } + }, "chokidar": { "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", @@ -2280,7 +2306,6 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "requires": { "color-name": "1.1.3" } @@ -2288,8 +2313,7 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "color-string": { "version": "1.5.3", @@ -3181,6 +3205,12 @@ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, + "empty-module": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/empty-module/-/empty-module-0.0.2.tgz", + "integrity": "sha1-E7TdjUr+3dNeUMGNzXiMUQh/FUU=", + "dev": true + }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -5678,6 +5708,11 @@ } } }, + "locale-js": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/locale-js/-/locale-js-1.1.1.tgz", + "integrity": "sha1-pUtQtNFYDIKxd1Y7Eb24+DF9m3w=" + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -6118,6 +6153,11 @@ "minimist": "^1.2.5" } }, + "moment": { + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.25.0.tgz", + "integrity": "sha512-vbrf6kJGpevOxmDRvCCvGuCSXvRj93264WcFzjm3Z3pV4lfjrXll8rvSP+EbmCte64udj1LkJMILxQnjXAQBzg==" + }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", diff --git a/package.json b/package.json index 64609fb..8521bde 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "axios": "^0.19", "bootstrap": "^4.0.0", "cross-env": "^7.0", + "empty-module": "0.0.2", "jquery": "^3.2", "laravel-mix": "^5.0.1", "lodash": "^4.17.13", @@ -22,5 +23,10 @@ "sass-loader": "^8.0.0", "vue": "^2.5.17", "vue-template-compiler": "^2.6.10" + }, + "dependencies": { + "chart.js": "^2.9.3", + "locale-js": "^1.1.1", + "moment": "^2.25.0" } } diff --git a/public/css/app.css b/public/css/app.css index ffc31c1..41395b9 100644 --- a/public/css/app.css +++ b/public/css/app.css @@ -44,11 +44,6 @@ box-sizing: border-box; } -.view { - background: url("/slides/06.png")no-repeat center center; - background-size: cover; -} - html { font-family: sans-serif; line-height: 1.15; @@ -4532,11 +4527,6 @@ input[type=button].btn-block { padding: 0.5rem 1rem; } -.navbar-style { - background: rgb(132,235,173); - background: linear-gradient(90deg, rgba(132,235,173,1) 10%, rgba(110,182,207,1) 29%, rgba(109,146,255,1) 92%); -} - .navbar .container, .navbar .container-fluid, .navbar .container-sm, diff --git a/resources/js/app.js b/resources/js/app.js index aa19e31..6ac5809 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -4,6 +4,7 @@ * building robust, powerful web applications using Vue and Laravel. */ +require('chart.js'); require('./bootstrap'); window.Vue = require('vue'); diff --git a/resources/js/application_charts.js b/resources/js/application_charts.js new file mode 100644 index 0000000..8cad579 --- /dev/null +++ b/resources/js/application_charts.js @@ -0,0 +1,45 @@ +var ctx = document.getElementById('appOverviewChart').getContext('2d'); +var chart = new Chart(ctx, { + // The type of chart we want to create + type: 'line', + + // The data for our dataset + data: { + labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], + datasets: [{ + label: 'Approved Apps.', + backgroundColor: 'rgb(26,246,40)', + borderColor: 'rgb(26,246,40)', + data: [0, 10, 5, 2, 20, 30, 45], + fill: false + }, + { + label: 'Denied Apps.', + backgroundColor: 'rgb(247, 43, 43)', + borderColor: 'rgb(247, 43, 43)', + data: [0, 10, 20, 0, 20, 14, 10], + fill: false + }] + }, + + // Configuration options go here + options: { + elements: { + point:{ + radius: 0 + } + }, + scales: { + xAxes: [{ + gridLines: { + display:false + } + }], + yAxes: [{ + gridLines: { + display:false + } + }] + } + } +}); diff --git a/resources/views/dashboard/appmanagement/outstandingapps.blade.php b/resources/views/dashboard/appmanagement/outstandingapps.blade.php new file mode 100644 index 0000000..192f6b4 --- /dev/null +++ b/resources/views/dashboard/appmanagement/outstandingapps.blade.php @@ -0,0 +1,96 @@ +@extends('adminlte::page') + +@section('title', 'Raspberry Network | Profile') + +@section('content_header') + +

Application Management / Outstanding Applications

+ +@stop + +@section('js') + + + +@stop + + +@section('content') + +
+ +
+ +
+ +
+ +

Outstanding Applications

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#Applicant NameStatusApplied OnActions
1Jonathan SmithUnder Review2020-04-20 + + +
+ +
+ +
+ +
+ +
+ +
+
+

Applications at a Glance

+ +
+ +
+
+
+
+ +
+
+ +
+ +
+ +
+ +@stop diff --git a/routes/web.php b/routes/web.php index 6564d17..5552250 100644 --- a/routes/web.php +++ b/routes/web.php @@ -38,6 +38,12 @@ Route::group(['middleware' => 'auth'], function(){ }); + Route::group(['prefix' => '/applications'], function (){ + + Route::get('/staff/outstanding', 'ApplicationController@showAllPendingApps'); + + }); + }); //Route::get('/dashboard/login', ''); diff --git a/webpack.mix.js b/webpack.mix.js index 19a48fa..2e7494f 100644 --- a/webpack.mix.js +++ b/webpack.mix.js @@ -11,5 +11,11 @@ const mix = require('laravel-mix'); | */ -mix.js('resources/js/app.js', 'public/js') +mix.js(['resources/js/app.js', 'resources/js/application_charts.js'], 'public/js') .sass('resources/sass/app.scss', 'public/css'); + +mix.webpackConfig({ + stats: { + warnings: false + } +});