diff options
| -rw-r--r-- | app/Http/Controllers/SpecialCallsController.php | 7 | ||||
| -rw-r--r-- | public/js/reserve.js | 120 | ||||
| -rw-r--r-- | public/mix-manifest.json | 3 | ||||
| -rw-r--r-- | resources/js/reserve.js | 9 | ||||
| -rw-r--r-- | resources/views/layouts/app.blade.php | 2 | ||||
| -rw-r--r-- | resources/views/pages/reserve.blade.php | 10 | ||||
| -rw-r--r-- | routes/web.php | 1 | ||||
| -rw-r--r-- | webpack.mix.js | 1 | 
8 files changed, 151 insertions, 2 deletions
| diff --git a/app/Http/Controllers/SpecialCallsController.php b/app/Http/Controllers/SpecialCallsController.php index b99b7ac..025d955 100644 --- a/app/Http/Controllers/SpecialCallsController.php +++ b/app/Http/Controllers/SpecialCallsController.php @@ -39,6 +39,13 @@ class SpecialCallsController extends Controller          return Redirect::back()->with('status', "Special callsign added.");      } +    public function show($sign) +    { +        $call = SpecialCall::where('sign', $sign)->first(); +        return $call->description ?? '<p><i>This special callsign doesn\'t have a description.</i></p>'; +    } +     +      public function edit(Request $request, int $id)      {          $data = SpecialCall::findOrFail($id); diff --git a/public/js/reserve.js b/public/js/reserve.js new file mode 100644 index 0000000..11e9af5 --- /dev/null +++ b/public/js/reserve.js @@ -0,0 +1,120 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ 	// The module cache +/******/ 	var installedModules = {}; +/******/ +/******/ 	// The require function +/******/ 	function __webpack_require__(moduleId) { +/******/ +/******/ 		// Check if module is in cache +/******/ 		if(installedModules[moduleId]) { +/******/ 			return installedModules[moduleId].exports; +/******/ 		} +/******/ 		// Create a new module (and put it into the cache) +/******/ 		var module = installedModules[moduleId] = { +/******/ 			i: moduleId, +/******/ 			l: false, +/******/ 			exports: {} +/******/ 		}; +/******/ +/******/ 		// Execute the module function +/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ 		// Flag the module as loaded +/******/ 		module.l = true; +/******/ +/******/ 		// Return the exports of the module +/******/ 		return module.exports; +/******/ 	} +/******/ +/******/ +/******/ 	// expose the modules object (__webpack_modules__) +/******/ 	__webpack_require__.m = modules; +/******/ +/******/ 	// expose the module cache +/******/ 	__webpack_require__.c = installedModules; +/******/ +/******/ 	// define getter function for harmony exports +/******/ 	__webpack_require__.d = function(exports, name, getter) { +/******/ 		if(!__webpack_require__.o(exports, name)) { +/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ 		} +/******/ 	}; +/******/ +/******/ 	// define __esModule on exports +/******/ 	__webpack_require__.r = function(exports) { +/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ 		} +/******/ 		Object.defineProperty(exports, '__esModule', { value: true }); +/******/ 	}; +/******/ +/******/ 	// create a fake namespace object +/******/ 	// mode & 1: value is a module id, require it +/******/ 	// mode & 2: merge all properties of value into the ns +/******/ 	// mode & 4: return value when already ns object +/******/ 	// mode & 8|1: behave like require +/******/ 	__webpack_require__.t = function(value, mode) { +/******/ 		if(mode & 1) value = __webpack_require__(value); +/******/ 		if(mode & 8) return value; +/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ 		var ns = Object.create(null); +/******/ 		__webpack_require__.r(ns); +/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ 		return ns; +/******/ 	}; +/******/ +/******/ 	// getDefaultExport function for compatibility with non-harmony modules +/******/ 	__webpack_require__.n = function(module) { +/******/ 		var getter = module && module.__esModule ? +/******/ 			function getDefault() { return module['default']; } : +/******/ 			function getModuleExports() { return module; }; +/******/ 		__webpack_require__.d(getter, 'a', getter); +/******/ 		return getter; +/******/ 	}; +/******/ +/******/ 	// Object.prototype.hasOwnProperty.call +/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ 	// __webpack_public_path__ +/******/ 	__webpack_require__.p = "/"; +/******/ +/******/ +/******/ 	// Load entry module and return exports +/******/ 	return __webpack_require__(__webpack_require__.s = 1); +/******/ }) +/************************************************************************/ +/******/ ({ + +/***/ "./resources/js/reserve.js": +/*!*********************************!*\ +  !*** ./resources/js/reserve.js ***! +  \*********************************/ +/*! no static exports found */ +/***/ (function(module, exports) { + +jQuery('select#special-call').change(setCallDesc); +jQuery(document).ready(setCallDesc); + +function setCallDesc() { +  sign = jQuery('select#special-call').first().val(); +  jQuery.get('/special-calls/show/' + sign, function (data, status) { +    jQuery('div#call-desc').html(data); +  }); +} + +/***/ }), + +/***/ 1: +/*!***************************************!*\ +  !*** multi ./resources/js/reserve.js ***! +  \***************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +module.exports = __webpack_require__(/*! /srv/http/laravel.komp.com/resources/js/reserve.js */"./resources/js/reserve.js"); + + +/***/ }) + +/******/ });
\ No newline at end of file diff --git a/public/mix-manifest.json b/public/mix-manifest.json index 2d60117..9c01802 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -1,4 +1,5 @@  {      "/js/app.js": "/js/app.js", -    "/css/app.css": "/css/app.css" +    "/css/app.css": "/css/app.css", +    "/js/reserve.js": "/js/reserve.js"  } diff --git a/resources/js/reserve.js b/resources/js/reserve.js new file mode 100644 index 0000000..7a20c37 --- /dev/null +++ b/resources/js/reserve.js @@ -0,0 +1,9 @@ +jQuery('select#special-call').change(setCallDesc); +jQuery(document).ready(setCallDesc); + +function setCallDesc() { +    sign = jQuery('select#special-call').first().val(); +    jQuery.get('/special-calls/show/' + sign, function (data, status) { +        jQuery('div#call-desc').html(data); +    }); +} diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index 8d2d01a..3cb8667 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -16,7 +16,7 @@          <div class="container pt-3">              @yield('content')          </div> -        <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script> +        <script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>          <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>          <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV" crossorigin="anonymous"></script>          @yield('scripts') diff --git a/resources/views/pages/reserve.blade.php b/resources/views/pages/reserve.blade.php index 16bdda5..868ae24 100644 --- a/resources/views/pages/reserve.blade.php +++ b/resources/views/pages/reserve.blade.php @@ -31,6 +31,12 @@    @enderror  </div> +<div class="card mb-3"> +  <div class="card-body pb-2"> +    <div class="card-text" id="call-desc"></div> +  </div> +</div> +    <!-- START TIME -->  <div class="form-group">    <label for="start-date">Start date:</label> @@ -229,3 +235,7 @@  </div>  </form>  @endsection() + +@section('scripts') +  <script src="{{ asset('js/reserve.js') }}"></script> +@endsection diff --git a/routes/web.php b/routes/web.php index fc9297e..bba3ab5 100644 --- a/routes/web.php +++ b/routes/web.php @@ -46,6 +46,7 @@ Route::post('/special-calls/reservations', [ReservationsController::class, 'upda  Route::get('/special-calls/add', [SpecialCallsController::class, 'create'])->name('addSign')->middleware(['auth']);  Route::post('/special-calls/add', [SpecialCallsController::class, 'store'])->name('addSignForm')->middleware(['auth']); +Route::get('/special-calls/show/{name}', [SpecialCallsController::class, 'show']);  Route::get('/special-calls/edit/{id}', [SpecialCallsController::class, 'edit'])->name('editSign')->middleware(['auth']);  Route::post('/special-calls/edit/{id}', [SpecialCallsController::class, 'update'])->name('editSignForm')->middleware(['auth']);  Route::get('/special-calls/delete/{id}', [SpecialCallsController::class, 'destroy'])->name('deleteSign')->middleware(['auth']); diff --git a/webpack.mix.js b/webpack.mix.js index 2a22dc1..d789eae 100644 --- a/webpack.mix.js +++ b/webpack.mix.js @@ -12,6 +12,7 @@ const mix = require('laravel-mix');   */  mix.js('resources/js/app.js', 'public/js') +    .js('resources/js/reserve.js', 'public/js')      .postCss('resources/css/app.css', 'public/css', [          //      ]); | 
