mirror of
https://gitlab.com/TheGamecraft/c-cms.git
synced 2026-04-21 10:49:10 -04:00
Merge branch '3.2.1' into 'dev'
3.2.1 See merge request TheGamecraft/c-cms!45
This commit is contained in:
@@ -53,6 +53,22 @@ deploy_736:
|
|||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
|
|
||||||
|
deploy_227:
|
||||||
|
stage: deploy
|
||||||
|
script:
|
||||||
|
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
|
||||||
|
- eval $(ssh-agent -s)
|
||||||
|
- ssh-add <(echo "$SSH_PRIVATE_KEY")
|
||||||
|
- mkdir -p ~/.ssh
|
||||||
|
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
|
||||||
|
|
||||||
|
- ~/.composer/vendor/bin/envoy run deploy_227 --commit="$CI_COMMIT_SHA"
|
||||||
|
environment:
|
||||||
|
name: CCMRC227
|
||||||
|
url: http://227.exvps.ca
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
|
||||||
deploy_dev:
|
deploy_dev:
|
||||||
stage: deploy
|
stage: deploy
|
||||||
script:
|
script:
|
||||||
|
|||||||
@@ -15,6 +15,10 @@
|
|||||||
$releases_dir_dev = '/var/www/c-cms/dev/releases';
|
$releases_dir_dev = '/var/www/c-cms/dev/releases';
|
||||||
$app_dir_dev = '/var/www/c-cms/dev';
|
$app_dir_dev = '/var/www/c-cms/dev';
|
||||||
$new_release_dir_dev = $releases_dir_dev .'/'. $release;
|
$new_release_dir_dev = $releases_dir_dev .'/'. $release;
|
||||||
|
|
||||||
|
$releases_dir_227 = '/var/www/c-cms/ccmrc227/releases';
|
||||||
|
$app_dir_227 = '/var/www/c-cms/ccmrc227';
|
||||||
|
$new_release_dir_227 = $releases_dir_227 .'/'. $release;
|
||||||
@endsetup
|
@endsetup
|
||||||
|
|
||||||
@story('deploy_697')
|
@story('deploy_697')
|
||||||
@@ -35,6 +39,12 @@
|
|||||||
update_symlinks_dev
|
update_symlinks_dev
|
||||||
@endstory
|
@endstory
|
||||||
|
|
||||||
|
@story('deploy_227')
|
||||||
|
clone_repository_227
|
||||||
|
run_composer_227
|
||||||
|
update_symlinks_227
|
||||||
|
@endstory
|
||||||
|
|
||||||
@task('clone_repository_697')
|
@task('clone_repository_697')
|
||||||
echo 'Cloning repository'
|
echo 'Cloning repository'
|
||||||
[ -d {{ $releases_dir_697 }} ] || mkdir {{ $releases_dir_697 }}
|
[ -d {{ $releases_dir_697 }} ] || mkdir {{ $releases_dir_697 }}
|
||||||
@@ -139,3 +149,38 @@
|
|||||||
php artisan db:seed --class=ConfigsTableSeeder
|
php artisan db:seed --class=ConfigsTableSeeder
|
||||||
|
|
||||||
@endtask
|
@endtask
|
||||||
|
|
||||||
|
@task('clone_repository_227')
|
||||||
|
echo 'Cloning repository'
|
||||||
|
[ -d {{ $releases_dir_227 }} ] || mkdir {{ $releases_dir_227 }}
|
||||||
|
git clone --depth 1 --single-branch -b dev {{ $repository }} {{ $new_release_dir_227 }}
|
||||||
|
cd {{ $new_release_dir_227 }}
|
||||||
|
git reset --hard {{ $commit }}
|
||||||
|
@endtask
|
||||||
|
|
||||||
|
@task('run_composer_227')
|
||||||
|
echo "Starting deployment ({{ $release }})"
|
||||||
|
cd {{ $new_release_dir_227 }}
|
||||||
|
composer install --prefer-dist --no-scripts -q -o
|
||||||
|
@endtask
|
||||||
|
|
||||||
|
@task('update_symlinks_227')
|
||||||
|
echo "Linking storage directory"
|
||||||
|
rm -rf {{ $new_release_dir_227 }}/storage
|
||||||
|
ln -nfs {{ $app_dir_227 }}/storage {{ $new_release_dir_227 }}/storage
|
||||||
|
|
||||||
|
echo 'Linking .env file'
|
||||||
|
ln -nfs {{ $app_dir_227 }}/.env {{ $new_release_dir_227 }}/.env
|
||||||
|
|
||||||
|
echo 'Linking current release'
|
||||||
|
ln -nfs {{ $new_release_dir_227 }} {{ $app_dir_227 }}/current
|
||||||
|
|
||||||
|
echo 'Setting permission'
|
||||||
|
chmod -R 777 {{ $app_dir_227 }}/current/bootstrap/
|
||||||
|
|
||||||
|
echo 'Migrate DB'
|
||||||
|
cd {{ $app_dir_227 }}/current/
|
||||||
|
php artisan migrate
|
||||||
|
php artisan db:seed --class=ConfigsTableSeeder
|
||||||
|
|
||||||
|
@endtask
|
||||||
85
app/Http/Controllers/ItemCategoryController.php
Normal file
85
app/Http/Controllers/ItemCategoryController.php
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\ItemCategory;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
|
class ItemCategoryController extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Display a listing of the resource.
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the form for creating a new resource.
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function create()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a newly created resource in storage.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function store(Request $request)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Display the specified resource.
|
||||||
|
*
|
||||||
|
* @param \App\ItemCategory $itemCategory
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function show(ItemCategory $itemCategory)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the form for editing the specified resource.
|
||||||
|
*
|
||||||
|
* @param \App\ItemCategory $itemCategory
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function edit(ItemCategory $itemCategory)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the specified resource in storage.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @param \App\ItemCategory $itemCategory
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function update(Request $request, ItemCategory $itemCategory)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the specified resource from storage.
|
||||||
|
*
|
||||||
|
* @param \App\ItemCategory $itemCategory
|
||||||
|
* @return \Illuminate\Http\Response
|
||||||
|
*/
|
||||||
|
public function destroy(ItemCategory $itemCategory)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -24,7 +24,7 @@ class ItemController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function create()
|
public function create()
|
||||||
{
|
{
|
||||||
return view('admin.item.add');
|
return view('admin.item.add',['categories' => \App\ItemCategory::all()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -33,17 +33,20 @@ class ItemController extends Controller
|
|||||||
* @param \Illuminate\Http\Request $request
|
* @param \Illuminate\Http\Request $request
|
||||||
* @return \Illuminate\Http\Response
|
* @return \Illuminate\Http\Response
|
||||||
*/
|
*/
|
||||||
public function store(Request $request)
|
public function store()
|
||||||
{
|
{
|
||||||
$item = new Item;
|
$item = new Item;
|
||||||
|
|
||||||
$item->name = request('name');
|
$item->name = request('name');
|
||||||
$item->desc = request('desc');
|
$item->desc = request('desc');
|
||||||
$item->quantiy = request('qt');
|
$item->quantity = request('quantity');
|
||||||
|
$item->official_number = request('official_number');
|
||||||
|
$item->metadata = ['size' => request('metadata-size')];
|
||||||
|
$item->category_id = request('category_id');
|
||||||
|
|
||||||
$item->save();
|
$item->save();
|
||||||
|
|
||||||
return redirect('/admin/inventory');
|
return redirect('/admin/inventory')->with('success','Item sauvegardé avec succès');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -67,7 +70,7 @@ class ItemController extends Controller
|
|||||||
{
|
{
|
||||||
$item = Item::find($id);
|
$item = Item::find($id);
|
||||||
|
|
||||||
return view('admin.item.edit',['item' => $item]);
|
return view('admin.item.edit',['item' => $item,'categories' => \App\ItemCategory::all()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -83,11 +86,14 @@ class ItemController extends Controller
|
|||||||
|
|
||||||
$item->name = request('name');
|
$item->name = request('name');
|
||||||
$item->desc = request('desc');
|
$item->desc = request('desc');
|
||||||
$item->quantity = request('qt');
|
$item->quantity = request('quantity');
|
||||||
|
$item->official_number = request('official_number');
|
||||||
|
$item->metadata = ['size' => request('metadata-size')];
|
||||||
|
$item->category_id = request('category_id');
|
||||||
|
|
||||||
$item->save();
|
$item->save();
|
||||||
|
|
||||||
return redirect('/admin/inventory');
|
return redirect('/admin/inventory')->with('success','Item sauvegardé avec succès');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -113,9 +113,9 @@ class UserController extends Controller
|
|||||||
* @param int $id
|
* @param int $id
|
||||||
* @return \Illuminate\Http\Response
|
* @return \Illuminate\Http\Response
|
||||||
*/
|
*/
|
||||||
public function update(Request $request)
|
public function update($id)
|
||||||
{
|
{
|
||||||
$user = User::where('email', request('email'))->first();
|
$user = User::find($id);
|
||||||
|
|
||||||
$user->firstname = request('firstname');
|
$user->firstname = request('firstname');
|
||||||
$user->lastname = request('lastname');
|
$user->lastname = request('lastname');
|
||||||
|
|||||||
@@ -18,8 +18,17 @@ class Item extends Model
|
|||||||
return $col_items;
|
return $col_items;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected $casts = [
|
||||||
|
'metadata' => 'array',
|
||||||
|
];
|
||||||
|
|
||||||
public function bookings()
|
public function bookings()
|
||||||
{
|
{
|
||||||
return $this->hasMany('App\Booking');
|
return $this->hasMany('App\Booking');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function category()
|
||||||
|
{
|
||||||
|
return \App\ItemCategory::find($this->category_id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
13
app/ItemCategory.php
Normal file
13
app/ItemCategory.php
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class ItemCategory extends Model
|
||||||
|
{
|
||||||
|
public function items()
|
||||||
|
{
|
||||||
|
return $this->hasMany('App\Item','category_id');
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -15,9 +15,12 @@ class CreateItemsTable extends Migration
|
|||||||
{
|
{
|
||||||
Schema::create('items', function (Blueprint $table) {
|
Schema::create('items', function (Blueprint $table) {
|
||||||
$table->increments('id');
|
$table->increments('id');
|
||||||
|
$table->integer('category_id');
|
||||||
$table->integer('quantity');
|
$table->integer('quantity');
|
||||||
$table->string('name');
|
$table->string('name');
|
||||||
|
$table->string('official_number');
|
||||||
$table->string('desc');
|
$table->string('desc');
|
||||||
|
$table->text('metadata');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ class CreatePicturesTable extends Migration
|
|||||||
{
|
{
|
||||||
Schema::create('pictures', function (Blueprint $table) {
|
Schema::create('pictures', function (Blueprint $table) {
|
||||||
$table->increments('id');
|
$table->increments('id');
|
||||||
$table->string('url');
|
$table->text('url');
|
||||||
$table->string('title');
|
$table->string('title');
|
||||||
$table->text('desc');
|
$table->text('desc');
|
||||||
$table->integer('pictureable_id');
|
$table->integer('pictureable_id');
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class CreateItemCategoriesTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('item_categories', function (Blueprint $table) {
|
||||||
|
$table->increments('id');
|
||||||
|
$table->string('name');
|
||||||
|
$table->text('desc');
|
||||||
|
$table->boolean('is_training');
|
||||||
|
$table->boolean('is_op_appro');
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('item_categories');
|
||||||
|
}
|
||||||
|
}
|
||||||
86
resources/views/admin/inventory/add.blade.php
Normal file
86
resources/views/admin/inventory/add.blade.php
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
@extends('layouts.admin.main')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header card-header-primary">
|
||||||
|
<h4>Ajouter un item à l'inventaire</h4>
|
||||||
|
</div>
|
||||||
|
<div class="card-body mt-5">
|
||||||
|
<form action="/admin/item/add" method="post">
|
||||||
|
|
||||||
|
@csrf
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Numéro d'article</label>
|
||||||
|
<input name="official_number" type="text" class="form-control" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Nom de l'article</label>
|
||||||
|
<input name="name" type="text" class="form-control" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Taille de l'article</label>
|
||||||
|
<input name="metadata-size" type="text" class="form-control" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Quantité disponible</label>
|
||||||
|
<input name="quantity" type="number" class="form-control" required>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Catégorie</label>
|
||||||
|
<select name="category_id" class="form-control selectpicker" required>
|
||||||
|
@foreach($categories as $category)
|
||||||
|
<option value="{{$category->id}}">{{$category->name}}</option>
|
||||||
|
@endforeach
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-12 mt-4">
|
||||||
|
<label for="desc">Description de l'image</label>
|
||||||
|
<div class="form-group">
|
||||||
|
<textarea name="desc" id="desc" class="form-control" required></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<button type="submit" class="btn btn-primary">Sauvegarder</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endsection
|
||||||
|
|
||||||
|
|
||||||
|
@section('custom_scripts')
|
||||||
|
<script>
|
||||||
|
$('#desc').trumbowyg({
|
||||||
|
lang: 'fr'
|
||||||
|
});
|
||||||
|
function saveChange(pPerm) {
|
||||||
|
(function($) {
|
||||||
|
var myswitch = document.getElementById(pPerm);
|
||||||
|
$.post('/api/config/general/save?api_token='+api_token, { value: myswitch.checked,perm: pPerm } , function(data) {
|
||||||
|
swal({
|
||||||
|
title: 'Modification enregistré !',
|
||||||
|
type: 'success',
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.value) {
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
});
|
||||||
|
})(jQuery);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
@endsection
|
||||||
@@ -13,19 +13,26 @@
|
|||||||
<table id="log-data" class="table table-striped table-bordered">
|
<table id="log-data" class="table table-striped table-bordered">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Quantité</th>
|
<th>#</th>
|
||||||
<th>Nom</th>
|
<th>Nom</th>
|
||||||
|
<th>Categorie</th>
|
||||||
<th>Description</th>
|
<th>Description</th>
|
||||||
<th></th>
|
<th>Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($items as $item)
|
@foreach ($items as $item)
|
||||||
<tr>
|
<tr>
|
||||||
<td style="width:5%;">{{$item->quantity}}</td>
|
<td>{{$item->official_number}}</td>
|
||||||
<td>{{$item->name}}</td>
|
<td>{{$item->name}}</td>
|
||||||
<td>{{$item->desc}}</td>
|
<td>{{$item->category()->name}}</td>
|
||||||
<td style="width: 12%;"><a href="/admin/item/edit/{{$item->id}}" type="button" class="btn btn-secondary"><i class="fa fa-cog"></i> Modifier</a><a type="button" class="btn btn-danger" onclick="deleteEvent({{$item->id}});"><i class="fa fa-times-circle" style="color:white;"></i></a></td>
|
<td>{!! $item->desc !!}</td>
|
||||||
|
<td style="width: 12%;">
|
||||||
|
<div class="btn-group">
|
||||||
|
<a href="/admin/item/edit/{{$item->id}}" type="button" class="btn btn-secondary"><i class="fa fa-cog"></i> Modifier</a>
|
||||||
|
<a type="button" class="btn btn-danger" onclick="deleteEvent({{$item->id}});"><i class="fa fa-times-circle" style="color:white;"></i></a>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
||||||
@@ -58,13 +65,16 @@
|
|||||||
@endsection
|
@endsection
|
||||||
|
|
||||||
@section('custom_scripts')
|
@section('custom_scripts')
|
||||||
|
<script src="https://cdn.datatables.net/rowgroup/1.1.0/js/dataTables.rowGroup.min.js"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
(function($) {
|
(function($) {
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$('#log-data').DataTable({
|
$('#log-data').DataTable({
|
||||||
"order": [[ 0, "desc" ]],
|
"order": [[ 2, "asc" ]],
|
||||||
"lengthMenu": [[25, 50, -1], [25, 50, "All"]],
|
"lengthMenu": [[25, 50, -1], [25, 50, "All"]],
|
||||||
|
"rowGroup": {
|
||||||
|
dataSrc: 2
|
||||||
|
}
|
||||||
});
|
});
|
||||||
} );
|
} );
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
|||||||
@@ -1,73 +1,86 @@
|
|||||||
@extends('layouts.admin.main')
|
@extends('layouts.admin.main')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header card-header-primary">
|
||||||
<strong class="card-title">Ajouter un item dans l'inventaire</strong>
|
<h4>Ajouter un item à l'inventaire</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body mt-5">
|
||||||
<form action="/admin/item/add" method="post">
|
<form action="/admin/item/add" method="post">
|
||||||
|
|
||||||
@csrf
|
@csrf
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="name">Nom</label>
|
<label>Numéro d'article</label>
|
||||||
<input type="text" class="form-control" name="name" id="name" aria-describedby="helpname" placeholder="Projecteur" required>
|
<input name="official_number" type="text" class="form-control" required>
|
||||||
<small id="helpname" class="form-text text-muted">Nom</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-md-6">
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="qt">Quantité</label>
|
<label>Nom de l'article</label>
|
||||||
<input type="number" class="form-control" name="qt" id="qt" aria-describedby="qthelp" placeholder="" required>
|
<input name="name" type="text" class="form-control" required>
|
||||||
<small id="qthelp" class="form-text text-muted">Quantité disponible</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-md-6">
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="desc">Description</label>
|
<label>Taille de l'article</label>
|
||||||
<textarea class="form-control" name="desc" id="desc" rows="5" required></textarea>
|
<input name="metadata-size" type="text" class="form-control" required>
|
||||||
<small id="helpname" class="form-text text-muted">Description de l'item</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Quantité disponible</label>
|
||||||
|
<input name="quantity" type="number" class="form-control" required>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
</div>
|
||||||
<div class="col-12">
|
<div class="col-md-6">
|
||||||
<button type="submit" class="btn btn-primary">Submit</button>
|
<div class="form-group">
|
||||||
|
<label>Catégorie</label>
|
||||||
|
<select name="category_id" class="form-control selectpicker" required>
|
||||||
|
@foreach($categories as $category)
|
||||||
|
<option value="{{$category->id}}">{{$category->name}}</option>
|
||||||
|
@endforeach
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-12 mt-4">
|
||||||
|
<label for="desc">Description de l'image</label>
|
||||||
|
<div class="form-group">
|
||||||
|
<textarea name="desc" id="desc" class="form-control" required></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<button type="submit" class="btn btn-primary">Sauvegarder</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@endsection
|
@endsection
|
||||||
|
|
||||||
@section('breadcrumb')
|
|
||||||
<div class="breadcrumbs">
|
|
||||||
<div class="col-sm-4">
|
|
||||||
<div class="page-header float-left">
|
|
||||||
<div class="page-title">
|
|
||||||
<h1>Inventaire</h1>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<div class="page-header float-right">
|
|
||||||
<div class="page-title">
|
|
||||||
<ol class="breadcrumb text-right">
|
|
||||||
<li class="active">Inventaire</li>
|
|
||||||
</ol>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
||||||
|
|
||||||
@section('custom_scripts')
|
@section('custom_scripts')
|
||||||
|
<script>
|
||||||
|
$('#desc').trumbowyg({
|
||||||
|
lang: 'fr'
|
||||||
|
});
|
||||||
|
function saveChange(pPerm) {
|
||||||
|
(function($) {
|
||||||
|
var myswitch = document.getElementById(pPerm);
|
||||||
|
$.post('/api/config/general/save?api_token='+api_token, { value: myswitch.checked,perm: pPerm } , function(data) {
|
||||||
|
swal({
|
||||||
|
title: 'Modification enregistré !',
|
||||||
|
type: 'success',
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.value) {
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
});
|
||||||
|
})(jQuery);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -1,73 +1,87 @@
|
|||||||
@extends('layouts.admin.main')
|
@extends('layouts.admin.main')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header card-header-primary">
|
||||||
<strong class="card-title">Ajouter un item dans l'inventaire</strong>
|
<h4>Ajouter un item à l'inventaire</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body mt-5">
|
||||||
<form action="/admin/item/edit/{{$item->id}}" method="post">
|
<form action="/admin/item/edit/{{$item->id}}" method="post">
|
||||||
|
|
||||||
@csrf
|
@csrf
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="name">Nom</label>
|
<label>Numéro d'article</label>
|
||||||
<input type="text" class="form-control" name="name" id="name" aria-describedby="helpname" placeholder="Projecteur" value="{{$item->name}}" required>
|
<input name="official_number" type="text" class="form-control" value="{{$item->official_number}}" required>
|
||||||
<small id="helpname" class="form-text text-muted">Nom</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-md-6">
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="qt">Quantité</label>
|
<label>Nom de l'article</label>
|
||||||
<input type="number" class="form-control" name="qt" id="qt" aria-describedby="qthelp" placeholder="" required value="{{$item->quantity}}">
|
<input name="name" type="text" class="form-control" value="{{$item->name}}" required>
|
||||||
<small id="qthelp" class="form-text text-muted">Quantité disponible</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-md-6">
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="desc">Description</label>
|
<label>Taille de l'article</label>
|
||||||
<textarea class="form-control" name="desc" id="desc" rows="5" required>{{$item->desc}}</textarea>
|
<input name="metadata-size" type="text" class="form-control" value="{{$item->metadata['size']}}" required>
|
||||||
<small id="helpname" class="form-text text-muted">Description de l'item</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Quantité disponible</label>
|
||||||
|
<input name="quantity" type="number" class="form-control" value="{{$item->quantity}}" required>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
</div>
|
||||||
<div class="col-12">
|
<div class="col-md-6">
|
||||||
<button type="submit" class="btn btn-primary">Submit</button>
|
<div class="form-group">
|
||||||
|
<label>Catégorie</label>
|
||||||
|
<select name="category_id" class="form-control selectpicker" required>
|
||||||
|
@foreach($categories as $category)
|
||||||
|
<option value="{{$category->id}}"
|
||||||
|
@if($item->category_id = $category->id) selected @endif>{{$category->name}}</option>
|
||||||
|
@endforeach
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-12 mt-4">
|
||||||
|
<label for="desc">Description de l'image</label>
|
||||||
|
<div class="form-group">
|
||||||
|
<textarea name="desc" id="desc" class="form-control" required>{!! $item->desc !!}</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<button type="submit" class="btn btn-primary">Sauvegarder</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@endsection
|
@endsection
|
||||||
|
|
||||||
@section('breadcrumb')
|
|
||||||
<div class="breadcrumbs">
|
|
||||||
<div class="col-sm-4">
|
|
||||||
<div class="page-header float-left">
|
|
||||||
<div class="page-title">
|
|
||||||
<h1>Inventaire</h1>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-8">
|
|
||||||
<div class="page-header float-right">
|
|
||||||
<div class="page-title">
|
|
||||||
<ol class="breadcrumb text-right">
|
|
||||||
<li class="active">Inventaire</li>
|
|
||||||
</ol>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
||||||
|
|
||||||
@section('custom_scripts')
|
@section('custom_scripts')
|
||||||
|
<script>
|
||||||
|
$('#desc').trumbowyg({
|
||||||
|
lang: 'fr'
|
||||||
|
});
|
||||||
|
function saveChange(pPerm) {
|
||||||
|
(function($) {
|
||||||
|
var myswitch = document.getElementById(pPerm);
|
||||||
|
$.post('/api/config/general/save?api_token='+api_token, { value: myswitch.checked,perm: pPerm } , function(data) {
|
||||||
|
swal({
|
||||||
|
title: 'Modification enregistré !',
|
||||||
|
type: 'success',
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.value) {
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
});
|
||||||
|
})(jQuery);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
</a></strong>
|
</a></strong>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<form action="/admin/user/edit" method="post">
|
<form action="/admin/user/edit/{{$user->id}}" method="post">
|
||||||
@csrf
|
@csrf
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
|
|||||||
@@ -69,7 +69,6 @@
|
|||||||
<p> Horaire</p>
|
<p> Horaire</p>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<!--
|
|
||||||
<li class="nav-item ">
|
<li class="nav-item ">
|
||||||
<a class="nav-link" data-toggle="collapse" href="#inventory">
|
<a class="nav-link" data-toggle="collapse" href="#inventory">
|
||||||
<i class="material-icons">shopping_basket</i>
|
<i class="material-icons">shopping_basket</i>
|
||||||
@@ -86,20 +85,20 @@
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item ">
|
<li class="nav-item ">
|
||||||
<a class="nav-link" href="/admin/inventory/add">
|
<a class="nav-link" href="/admin/item/add">
|
||||||
<span class="sidebar-mini"> <i class="fas fa-plus"></i> </span>
|
<span class="sidebar-mini"> <i class="fas fa-plus"></i> </span>
|
||||||
<span class="sidebar-normal"> Ajouter un item </span>
|
<span class="sidebar-normal"> Ajouter un item </span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item ">
|
<!--<li class="nav-item ">
|
||||||
<a class="nav-link" href="/admin/inventory/booking">
|
<a class="nav-link" href="/admin/inventory/booking">
|
||||||
<span class="sidebar-mini"> <i class="fas fa-bookmark"></i> </span>
|
<span class="sidebar-mini"> <i class="fas fa-bookmark"></i> </span>
|
||||||
<span class="sidebar-normal"> Réservation</span>
|
<span class="sidebar-normal"> Réservation</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>-->
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li>-->
|
</li>
|
||||||
<li class="nav-item ">
|
<li class="nav-item ">
|
||||||
<a class="nav-link" data-toggle="collapse" href="#inventory">
|
<a class="nav-link" data-toggle="collapse" href="#inventory">
|
||||||
<i class="material-icons">image</i>
|
<i class="material-icons">image</i>
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ Route::middleware(['auth','admin'])->group(function () {
|
|||||||
Route::get('/admin/user/add' , 'UserController@create');
|
Route::get('/admin/user/add' , 'UserController@create');
|
||||||
Route::post('/admin/user/add' , 'UserController@store');
|
Route::post('/admin/user/add' , 'UserController@store');
|
||||||
Route::get('/admin/user/edit/{id}' , 'UserController@edit');
|
Route::get('/admin/user/edit/{id}' , 'UserController@edit');
|
||||||
Route::post('/admin/user/edit' , 'UserController@update');
|
Route::post('/admin/user/edit/{id}' , 'UserController@update');
|
||||||
|
|
||||||
/** Config */
|
/** Config */
|
||||||
Route::get('/admin/config/job' , 'JobController@index');
|
Route::get('/admin/config/job' , 'JobController@index');
|
||||||
|
|||||||
Reference in New Issue
Block a user