Merge branch 'develop' into trunk
This commit is contained in:
commit
8d655e6eb2
14 changed files with 416 additions and 50 deletions
97
app/Http/Controllers/GitReposController.php
Normal file
97
app/Http/Controllers/GitReposController.php
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Requests\GitReposStoreRequest;
|
||||
use App\Http\Requests\GitReposUpdateRequest;
|
||||
use App\Models\GitRepos;
|
||||
|
||||
class GitReposController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$repos = GitRepos::all();
|
||||
return view('git-repos.index', compact('repos'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for creating a new resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
return view('git-repos.create');
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\GitReposStoreRequest $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(GitReposStoreRequest $request)
|
||||
{
|
||||
$datas = $request->validated();
|
||||
$git_repo = new GitRepos();
|
||||
$git_repo->fill($datas);
|
||||
$git_repo->save();
|
||||
|
||||
return redirect()->route('git-repos.edit', ['git_repo' => $git_repo])->with('status', __('Dépôt Git créé.'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
abort('404');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*
|
||||
* @param GitRepos $git_repo
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function edit(GitRepos $git_repo)
|
||||
{
|
||||
return view('git-repos.edit', compact('git_repo'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\GitReposUpdateRequest $request
|
||||
* @param GitRepos $git_repo
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(GitReposUpdateRequest $request, GitRepos $git_repo)
|
||||
{
|
||||
$datas = $request->validated();
|
||||
$git_repo->fill($datas);
|
||||
$git_repo->save();
|
||||
|
||||
return redirect()->route('git-repos.edit', ['git_repo' => $git_repo])->with('status', __('Dépôt Git mis à jour.'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param GitRepos $git_repo
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy(GitRepos $git_repo)
|
||||
{
|
||||
$git_repo->delete();
|
||||
return redirect()->route('git-repos.index')->with('status', __('Dépôt Git supprimé.'));
|
||||
}
|
||||
}
|
||||
|
|
@ -121,9 +121,6 @@ class ProjectsController extends Controller
|
|||
$php = $request->php;
|
||||
$type = $request->type;
|
||||
$https = $request->https;
|
||||
$git_repo = $request->git_repo;
|
||||
$git_user = $request->git_user;
|
||||
$git_pwd = $request->git_pwd;
|
||||
$prod_url = $request->prod_url;
|
||||
$dev_url = $request->dev_url;
|
||||
$prod_certificats = $request->prod_certificats;
|
||||
|
|
@ -168,9 +165,6 @@ class ProjectsController extends Controller
|
|||
$project->php = $php;
|
||||
$project->type = $type;
|
||||
$project->https = $https;
|
||||
$project->git_repo = $git_repo;
|
||||
$project->git_user = $git_user;
|
||||
$project->git_pwd = $git_pwd;
|
||||
$project->prod_url = $prod_url;
|
||||
$project->dev_url = $dev_url;
|
||||
$project->prod_certificats = $prod_certificats;
|
||||
|
|
|
|||
46
app/Http/Requests/GitReposStoreRequest.php
Normal file
46
app/Http/Requests/GitReposStoreRequest.php
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class GitReposStoreRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function authorize()
|
||||
{
|
||||
return Auth::check();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'name' => [
|
||||
'string',
|
||||
'required',
|
||||
Rule::unique('git_repos', 'name'),
|
||||
],
|
||||
'login' => [
|
||||
Rule::requiredIf(function () {
|
||||
return !is_null($this->password);
|
||||
})
|
||||
],
|
||||
'password' => [
|
||||
Rule::requiredIf(function () {
|
||||
return !is_null($this->login);
|
||||
})
|
||||
],
|
||||
];
|
||||
}
|
||||
}
|
||||
46
app/Http/Requests/GitReposUpdateRequest.php
Normal file
46
app/Http/Requests/GitReposUpdateRequest.php
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class GitReposUpdateRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function authorize()
|
||||
{
|
||||
return Auth::check();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'name' => [
|
||||
'string',
|
||||
'required',
|
||||
Rule::unique('git_repos', 'name')->ignore($this->git_repo->id),
|
||||
],
|
||||
'login' => [
|
||||
Rule::requiredIf(function () {
|
||||
return !is_null($this->password);
|
||||
})
|
||||
],
|
||||
'password' => [
|
||||
Rule::requiredIf(function () {
|
||||
return !is_null($this->login);
|
||||
})
|
||||
],
|
||||
];
|
||||
}
|
||||
}
|
||||
10
app/Models/GitRepos.php
Normal file
10
app/Models/GitRepos.php
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class GitRepos extends Model
|
||||
{
|
||||
protected $fillable = ['name', 'login', 'password'];
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateGitReposTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('git_repos', function (Blueprint $table) {
|
||||
$table->bigIncrements('id');
|
||||
$table->string('name')->unique();
|
||||
$table->string('login')->nullable();
|
||||
$table->string('password')->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('git_repos');
|
||||
}
|
||||
}
|
||||
66
resources/views/git-repos/create.blade.php
Normal file
66
resources/views/git-repos/create.blade.php
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __("Ajout d'un dépôt Git") }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
@if (session('error'))
|
||||
<div class="alert alert-danger" role="alert">
|
||||
{{ session('error') }}
|
||||
</div>
|
||||
@endif
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
<form action="{{route('git-repos.store')}}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><b>{{ __('Nom') }} :</b></label>
|
||||
<input type="text" class="form-control" name="name"
|
||||
placeholder="{{ __('Nom') }}" value="{{ old('name') }}" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><b>{{ __('Identifiant') }} :</b></label>
|
||||
<input type="text" class="form-control" name="login"
|
||||
placeholder="{{ __('Identifiant') }}" value="{{ old('login') }}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><b>{{ __('Mot de passe') }} :</b></label>
|
||||
<input type="text" class="form-control" name="password"
|
||||
placeholder="{{ __('Mot de passe') }}" value="{{ old('password') }}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-center">
|
||||
<input type="submit" value="Enregistrer" class="btn btn-primary">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
73
resources/views/git-repos/edit.blade.php
Normal file
73
resources/views/git-repos/edit.blade.php
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Détails du dépôt Git') }}
|
||||
<form action="{{route('git-repos.destroy', ['git_repo' => $git_repo->id])}}" method="POST" class="float-right">
|
||||
@csrf
|
||||
@method('DELETE')
|
||||
<button type="submit" class="btn btn-sm btn-danger" onclick="return confirm('{{ __('Êtes-vous sûr ?') }}');">{{ __('Supprimer') }}</button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
@if (session('error'))
|
||||
<div class="alert alert-danger" role="alert">
|
||||
{{ session('error') }}
|
||||
</div>
|
||||
@endif
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
<form action="{{route('git-repos.update', ['git_repo' => $git_repo->id])}}" method="POST">
|
||||
@csrf
|
||||
@method('PUT')
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><b>{{ __('Nom') }} :</b></label>
|
||||
<input type="text" class="form-control" name="name"
|
||||
placeholder="{{ __('Nom') }}" value="{{$git_repo->name}}" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><b>{{ __('Identifiant') }} :</b></label>
|
||||
<input type="text" class="form-control" name="login"
|
||||
placeholder="{{ __('Identifiant') }}" value="{{$git_repo->login}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><b>{{ __('Mot de passe') }} :</b></label>
|
||||
<input type="text" class="form-control" name="password"
|
||||
placeholder="{{ __('Mot de passe') }}" value="{{$git_repo->password}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-center">
|
||||
<input type="submit" value="{{ __('Enregistrer') }}" class="btn btn-primary">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
37
resources/views/git-repos/index.blade.php
Normal file
37
resources/views/git-repos/index.blade.php
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Gestion des dépôts Git') }} <a href="{{route('git-repos.create')}}" class="btn btn-sm btn-primary float-right">{{ __('Ajouter') }}</a></div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
<table class="table text-center">
|
||||
<thead class="thead-dark">
|
||||
<tr>
|
||||
<th scope="col">{{ __('Nom') }}</th>
|
||||
<th scope="col"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($repos as $repo)
|
||||
<tr>
|
||||
<td>{{$repo->name}}</td>
|
||||
<td><a href="{{route('git-repos.edit', ['git_repo' => $repo->id])}}" class="btn btn-sm btn-primary">{{ __('Détails') }}</a></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
@ -47,6 +47,10 @@
|
|||
<i class="fas fa-network-wired"></i><br>
|
||||
Réseau LDC
|
||||
</a>
|
||||
<a href="{{route('git-repos.index')}}" class="btn btn-lg btn-primary">
|
||||
<i class="fas fa-code-branch"></i><br>
|
||||
Dépôts Git
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -55,6 +55,7 @@
|
|||
<a class="dropdown-item" href="/domain-names" class="nav-link">Noms de domaine</a>
|
||||
<a class="dropdown-item" href="{{route('email-addresses.index')}}" class="nav-link">Adresses email</a>
|
||||
<a class="dropdown-item" href="{{route('ldc-networks.index')}}" class="nav-link">Réseau LDC</a>
|
||||
<a class="dropdown-item" href="{{route('git-repos.index')}}" class="nav-link">Dépôts GIT</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
|
|
|
|||
|
|
@ -31,14 +31,6 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="form-group">
|
||||
<label><b>Dépôt GIT :</b></label>
|
||||
<input type="text" name="git_repo" class="form-control" placeholder="Dépôt GIT">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
|
|
@ -73,20 +65,6 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label><b>GIT User :</b></label>
|
||||
<input type="text" name="git_user" class="form-control" placeholder="GIT User">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label><b>GIT Password :</b></label>
|
||||
<input type="text" name="git_pwd" class="form-control" placeholder="GIT Password">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if (Auth::user()->role === 1)
|
||||
|
|
|
|||
|
|
@ -36,14 +36,6 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="form-group">
|
||||
<label><b>Dépôt GIT :</b></label>
|
||||
<input type="text" name="git_repo" class="form-control" placeholder="Dépôt GIT" value="{{$project->git_repo}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
|
|
@ -78,20 +70,6 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label><b>GIT User :</b></label>
|
||||
<input type="text" name="git_user" class="form-control" placeholder="GIT User" value="{{$project->git_user}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label><b>GIT Password :</b></label>
|
||||
<input type="text" name="git_pwd" class="form-control" placeholder="GIT Password" value="{{$project->git_pwd}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if (Auth::user()->role === 1)
|
||||
|
|
|
|||
|
|
@ -71,4 +71,6 @@ Route::group(['middleware' => ['auth']], function () {
|
|||
Route::post('/ldc-networks/{id}/update', 'LDCNetworkController@update')->name('ldc-networks.update');
|
||||
Route::get('/ldc-networks/{id}/delete', 'LDCNetworkController@delete')->name('ldc-networks.delete');
|
||||
Route::post('/ldc-networks/{id}/force-delete', 'LDCNetworkController@forceDelete')->name('ldc-networks.force-delete');
|
||||
/* GIT REPOS */
|
||||
Route::resource('git-repos', 'GitReposController');
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue