new instance for 227

This commit is contained in:
Mathieu Lagace
2019-08-28 09:28:02 -04:00
parent 509a135e74
commit a3156ac246
12 changed files with 334 additions and 144 deletions

View File

@@ -53,6 +53,22 @@ deploy_736:
only:
- 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:
stage: deploy
script:

View File

@@ -15,6 +15,10 @@
$releases_dir_dev = '/var/www/c-cms/dev/releases';
$app_dir_dev = '/var/www/c-cms/dev';
$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
@story('deploy_697')
@@ -35,6 +39,12 @@
update_symlinks_dev
@endstory
@story('deploy_227')
clone_repository_227
run_composer_227
update_symlinks_227
@endstory
@task('clone_repository_697')
echo 'Cloning repository'
[ -d {{ $releases_dir_697 }} ] || mkdir {{ $releases_dir_697 }}
@@ -138,4 +148,39 @@
php artisan migrate
php artisan db:seed --class=ConfigsTableSeeder
@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

View File

@@ -24,7 +24,7 @@ class ItemController extends Controller
*/
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
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
public function store()
{
$item = new Item;
$item->name = request('name');
$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();
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);
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->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();
return redirect('/admin/inventory');
return redirect('/admin/inventory')->with('success','Item sauvegardé avec succès');
}
/**

View File

@@ -113,9 +113,9 @@ class UserController extends Controller
* @param int $id
* @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->lastname = request('lastname');

View File

@@ -15,7 +15,7 @@ class CreatePicturesTable extends Migration
{
Schema::create('pictures', function (Blueprint $table) {
$table->increments('id');
$table->string('url');
$table->text('url');
$table->string('title');
$table->text('desc');
$table->integer('pictureable_id');

View 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

View File

@@ -13,19 +13,26 @@
<table id="log-data" class="table table-striped table-bordered">
<thead>
<tr>
<th>Quantité</th>
<th>#</th>
<th>Nom</th>
<th>Categorie</th>
<th>Description</th>
<th></th>
<th>Action</th>
</tr>
</thead>
<tbody>
@foreach ($items as $item)
<tr>
<td style="width:5%;">{{$item->quantity}}</td>
<td>{{$item->official_number}}</td>
<td>{{$item->name}}</td>
<td>{{$item->desc}}</td>
<td style="width: 12%;"><a href="/admin/item/edit/{{$item->id}}" type="button" class="btn btn-secondary"><i class="fa fa-cog"></i>&nbsp; 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->category()->name}}</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>&nbsp; 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>
@endforeach
@@ -58,13 +65,16 @@
@endsection
@section('custom_scripts')
<script src="https://cdn.datatables.net/rowgroup/1.1.0/js/dataTables.rowGroup.min.js"></script>
<script type="text/javascript">
(function($) {
$(document).ready(function() {
$('#log-data').DataTable({
"order": [[ 0, "desc" ]],
"order": [[ 2, "asc" ]],
"lengthMenu": [[25, 50, -1], [25, 50, "All"]],
"rowGroup": {
dataSrc: 2
}
});
} );
})(jQuery);

View File

@@ -1,73 +1,86 @@
@extends('layouts.admin.main')
@section('content')
<div class="col-md-12">
<div class="card">
<div class="card-header">
<strong class="card-title">Ajouter un item dans l'inventaire</strong>
</div>
<div class="card-body">
<form action="/admin/item/add" method="post">
@csrf
<div class="row">
<div class="col-12">
<div class="form-group">
<label for="name">Nom</label>
<input type="text" class="form-control" name="name" id="name" aria-describedby="helpname" placeholder="Projecteur" required>
<small id="helpname" class="form-text text-muted">Nom</small>
<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>
</div>
<div class="row">
<div class="col-12">
<div class="form-group">
<label for="qt">Quantité</label>
<input type="number" class="form-control" name="qt" id="qt" aria-describedby="qthelp" placeholder="" required>
<small id="qthelp" class="form-text text-muted">Quantité disponible</small>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="form-group">
<label for="desc">Description</label>
<textarea class="form-control" name="desc" id="desc" rows="5" required></textarea>
<small id="helpname" class="form-text text-muted">Description de l'item</small>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
</form>
</div>
</div>
</div>
</div>
@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')
<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

View File

@@ -1,73 +1,87 @@
@extends('layouts.admin.main')
@section('content')
<div class="col-md-12">
<div class="card">
<div class="card-header">
<strong class="card-title">Ajouter un item dans l'inventaire</strong>
</div>
<div class="card-body">
<form action="/admin/item/edit/{{$item->id}}" method="post">
@csrf
<div class="row">
<div class="col-12">
<div class="form-group">
<label for="name">Nom</label>
<input type="text" class="form-control" name="name" id="name" aria-describedby="helpname" placeholder="Projecteur" value="{{$item->name}}" required>
<small id="helpname" class="form-text text-muted">Nom</small>
<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/edit/{{$item->id}}" 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" value="{{$item->official_number}}" 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" value="{{$item->name}}" 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" value="{{$item->metadata['size']}}" required>
</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="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}}"
@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 class="row">
<div class="col-12">
<div class="form-group">
<label for="qt">Quantité</label>
<input type="number" class="form-control" name="qt" id="qt" aria-describedby="qthelp" placeholder="" required value="{{$item->quantity}}">
<small id="qthelp" class="form-text text-muted">Quantité disponible</small>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="form-group">
<label for="desc">Description</label>
<textarea class="form-control" name="desc" id="desc" rows="5" required>{{$item->desc}}</textarea>
<small id="helpname" class="form-text text-muted">Description de l'item</small>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
</form>
</div>
</div>
</div>
</div>
@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')
<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

View File

@@ -8,7 +8,7 @@
</a></strong>
</div>
<div class="card-body">
<form action="/admin/user/edit" method="post">
<form action="/admin/user/edit/{{$user->id}}" method="post">
@csrf
<div class="row">
<div class="col-6">

View File

@@ -85,17 +85,17 @@
</a>
</li>
<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-normal"> Ajouter un item </span>
</a>
</li>
<li class="nav-item ">
<!--<li class="nav-item ">
<a class="nav-link" href="/admin/inventory/booking">
<span class="sidebar-mini"> <i class="fas fa-bookmark"></i> </span>
<span class="sidebar-normal"> Réservation</span>
</a>
</li>
</li>-->
</ul>
</div>
</li>

View File

@@ -64,7 +64,7 @@ Route::middleware(['auth','admin'])->group(function () {
Route::get('/admin/user/add' , 'UserController@create');
Route::post('/admin/user/add' , 'UserController@store');
Route::get('/admin/user/edit/{id}' , 'UserController@edit');
Route::post('/admin/user/edit' , 'UserController@update');
Route::post('/admin/user/edit/{id}' , 'UserController@update');
/** Config */
Route::get('/admin/config/job' , 'JobController@index');