Refactoring, change menu, add many features

This commit is contained in:
Ludovic CANDELLIER
2021-10-30 02:22:51 +02:00
parent fae7b7897f
commit e356b3fcda
158 changed files with 1114 additions and 412 deletions

View File

@@ -0,0 +1,4 @@
<button type="{{ $type ?? 'button' }}" class="btn {{ $class ?? ''}}" @if (isset($id)) id="{{ $id }}"@endif>
<i class="fa fa-fw {{ $icon ?? '' }}"></i>
{{ $txt ?? '' }}
</button>

View File

@@ -0,0 +1 @@
@include('components.form.button', ['class' => 'btn-success ' . ($class ?? ''), 'icon' => 'fa-plus' ])

View File

@@ -0,0 +1,13 @@
@include('components.form.button', ['class' => 'btn-secondary cancel ' . ($class ?? ''), 'icon' => 'fa-ban', 'txt' => __('cancel')])
@push('js')
<script>
$('.form-buttons .cancel').click(function() {
@if (isset($url))
window.location = "{{ $url }}";
@else
window.history.back();
@endif
})
</script>
@endpush

View File

@@ -0,0 +1 @@
@include('components.form.button', ['class' => 'btn-danger ' . ($class ?? ''), 'icon' => ($icon ?? 'fa-trash)'])

View File

@@ -0,0 +1 @@
@include('components.form.button', ['class' => 'btn-success save ' . ($class ?? ''), 'icon' => 'fa-save', 'txt' => __('save')])

View File

@@ -0,0 +1,3 @@
<button type="{{ $type_button ?? 'submit' }}" class="btn btn-success submit {{ $class ?? ''}}" @if (isset($id_name)) id="{{ $id_name }}"@endif>
<i class="fa fa-fw fa-save"></i> Envoyer
</button>

View File

@@ -1,3 +1,4 @@
<input type="checkbox" name="{{ $name }}" id="{{ $id_name ?? $name }}" class="{{ $class ?? ''}}" value="{{ $val ?? ''}}"
@if (isset($value) && isset($val) && ($value == $val)) checked @endif
<input type="checkbox" name="{{ $name }}" id="{{ $id_name ?? $name }}" class="{{ $class ?? ''}}" value="{{ $val ?? 1}}" {{ $meta ?? '' }}
@if ( (isset($value) && isset($val) && ($value == $val)) || (!isset($val) && $value)) checked @endif
@if (isset($disabled) && $disabled)disabled="disabled"@endif
>

View File

@@ -0,0 +1,4 @@
<div class="icheck-{{ $color ?? 'success' }} {{ $class ?? '' }}">
@include('components.form.checkbox')
<label class="control-label light" for="{{ $id_name ?? $name }}">{{ $label ?? '' }}</label>
</div>

View File

@@ -1,4 +1,4 @@
@include('load.form.color')
@include('components.input', ['class' => 'color'])
@include('components.form.input', ['class' => 'color'])

View File

@@ -0,0 +1 @@
@include('components.form.input', ['class' => 'datepicker', 'mask' => '99/99/9999'])

View File

@@ -1,7 +1,7 @@
@include('load.form.datepicker')
<div class="input-group date" data-target-input="nearest">
@include('components.input', ['class' => 'datepicker', 'meta' => 'data-target="#'.str_slug($name).'"', 'placeholder' => App\Repositories\Core\DateTime::getLocaleFormatDate() ])
@include('components.form.input', ['class' => 'datepicker', 'meta' => 'data-target="#'.str_slug($name).'"', 'placeholder' => App\Repositories\Core\DateTime::getLocaleFormatDate() ])
<div class="input-group-append" data-target="#{{ str_slug($name) }}" data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i></div>
</div>

View File

@@ -0,0 +1 @@
@include('components.form.input', ['class' => 'datetimepicker', 'mask' => '99/99/9999 99:99'])

View File

@@ -1,4 +1,4 @@
@include('components.input', ['class' => 'datetimepicker'])
@include('components.form.input', ['class' => 'datetimepicker'])
@if(!defined('LOAD_DATETIMEPICKER'))
@include('boilerplate::load.datetimepicker')

View File

@@ -0,0 +1 @@
<input type="file" name="{{ $name }}" id="{{ $id_name ?? $name }}" class="{{ $class ?? 'fileinput' }}" data-show-upload="{{ $show_upload ?? false }}" data-show-caption="{{ $show_caption ?? true }}" data-msg-placeholder="{{ $placeholder ?? __('choose_a_file') }}">

View File

@@ -0,0 +1,7 @@
<input type="{{ $type ?? 'text'}}" name="{{ $name }}" id="{{ $id_name ?? str_slug($name,'-') }}" class="form-control {{ $class ?? ''}}" value="{{ $value ?? ''}}"
@if (isset($required) && $required)required="required"@endif
@if (isset($disabled) && $disabled)disabled="disabled"@endif
@if (isset($mask))data-inputmask="'mask': '{{ $mask }}'"@endif
@if (isset($placeholder))placeholder="{{ $placeholder }}"@endif
{{ $meta ?? ''}}
>

View File

@@ -0,0 +1 @@
@include('components.form.input', ['type' => 'email'])

View File

@@ -0,0 +1,17 @@
<div class="input-group">
@include('components.form.input')
<div class="input-group-append">
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-globe"></i>
</button>
<div class="dropdown-menu">
@if (is_array($translations))
@foreach ($translations as $lang => $translation)
<a class="dropdown-item" href="#">{{ $lang }} : {{ $translation }}</a>
@endforeach
@endif
</div>
</div>
</div>

View File

@@ -0,0 +1,17 @@
<div class="input-group">
@include('components.form.input')
<div class="input-group-append">
<div class="input-group-text btn btn-{{ $class ?? '' }}" role="button"><i class="fa fa-{{ $icon ?? '' }}"></i></div>
</div>
</div>
@if (isset($click))
@push('js')
<script>
$('.btn-{{ $class ?? '' }}').off().click(function() {
var value = $(this).closest('.input-group').find('input').val();
console.log(value);
});
</script>
@endpush
@endif

View File

@@ -0,0 +1 @@
@include('components.form.input', ['type' => 'number', 'meta' => "step = '.01'"])

View File

@@ -0,0 +1,9 @@
<input type="number" name="{{ $name }}" id="{{ $id_name ?? str_slug($name,'-') }}" class="form-control {{ $class ?? ''}}" value="{{ $value ?? ''}}"
@if (isset($required))
required="required"
@endif
{{ isset($min) ? 'min="' . $min . '"' : ''}}
{{ isset($max) ? 'max="' . $max . '"' : ''}}
{{ isset($step) ? 'step="' . $step . '"' : ''}}
{{ isset($placeholder) ? 'placeholder="' . $placeholder. '"' : ''}}
>

View File

@@ -0,0 +1,13 @@
<div class="input-group">
@include('components.form.input')
<div class="input-group-append">
<button class="btn btn-outline-secondary">
<i class="fa fa-unlock"></i>
</button>
<button class="btn btn-outline-secondary">
<i class="fa fa-sync-alt"></i>
</button>
</div>
</div>

View File

@@ -0,0 +1,10 @@
<div class="input-group">
@include('components.form.input', ['type' => 'number', 'meta' => "step = '.01'"])
<div class="input-group-append">
<button class="btn bg-light" type="button" aria-haspopup="false" aria-expanded="false">
%
</button>
</div>
</div>

View File

@@ -0,0 +1 @@
@include('components.form.input', ['mask' => '99.99.99.99.99'])

View File

@@ -0,0 +1,11 @@
<div class="input-group">
@include('components.form.input', ['class' => 'url'])
<div class="input-group-append">
@if (isset($with_download) && $with_download)
<div class="input-group-text btn btn-web" role="button"><i class="fa {{ (isset($status) && $status) ? 'fa-check green' : 'fa-download' }}"></i></div>
@endif
@if (isset($with_web) && $with_web)
<div class="input-group-text btn btn-web" role="button"><i class="fa fa-search"></i></div>
@endif
</div>
</div>

View File

@@ -0,0 +1,9 @@
@if (isset($complex) && $complex)
@include('components.form.options.options-complex')
@else
@if (isset($multiple) && $multiple)
@include('components.form.options.options-multiple')
@else
@include('components.form.options.options-simple')
@endif
@endif

View File

@@ -0,0 +1,14 @@
@if (isset($list) && count($list))
@foreach($list as $item)
<option
@if (isset($value) && ($item['id'] == $value)) selected @endif value="{{$item['id']}}"
@foreach($item as $item_key => $item_value)
@if (($item_key != 'id') && ($item_key != 'txt'))
data-{{ $item_key }}="{{ $item_value }}"
@endif
@endforeach
>
{{ $item['txt'] }}
</option>
@endforeach
@endif

View File

@@ -0,0 +1,5 @@
@if (($list ?? false) && count($list))
@foreach($list as $key => $item)
<option @if (isset($values) && in_array($key, $values)) selected @endif value="{{$key}}">{{ $item }}</option>
@endforeach
@endif

View File

@@ -0,0 +1,5 @@
@if (isset($list) && count($list))
@foreach($list as $key => $item)
<option @if (isset($value) && ($key == $value)) selected @endif value="{{$key}}">{{ $item }}</option>
@endforeach
@endif

View File

@@ -0,0 +1,7 @@
@if (isset($list) && count($list))
@foreach($list as $key => $optgroup)
<optgroup label="{{ $optgroup['label'] }}">
@include('components.form.options', ['list' => $optgroup['options']])
</optgroup>
@endforeach
@endif

View File

@@ -1,6 +1,6 @@
<div class="input-group">
@include('components.input')
@include('components.form.input')
<div class="input-group-append">
<button class="btn btn-outline-secondary">

View File

@@ -1,6 +1,6 @@
<div class="input-group">
@include('components.input', ['type' => 'number', 'meta' => "step = '.01'"])
@include('components.form.input', ['type' => 'number', 'meta' => "step = '.01'"])
<div class="input-group-append">
<button class="btn bg-light" type="button" aria-haspopup="false" aria-expanded="false">

View File

@@ -1 +1 @@
@include('components.select', ['class' => 'duallist', 'multiple' => true])
@include('components.form.select', ['class' => 'duallist', 'multiple' => true])

View File

@@ -0,0 +1,20 @@
<select name="{{ $name }}"
@if (isset($id_name))id="{{ $id_name }}"@endif
class="form-control {{ $class ?? null }}"
@if (isset($style))style="{{ $style }}" @endif
@if (isset($meta)) {{ $meta }} @endif
@if (isset($required))required="required"@endif
@if (isset($disabled) && $disabled)disabled="disabled"@endif
@if (isset($multiple))multiple="multiple"@endif
>
@if (isset($with_empty))
<option value=''>{{ $with_empty }}</option>
@endif
@if (isset($multiple))
@include('components.form.options.options-multiple')
@else
@include('components.form.options')
@endif
</select>

View File

@@ -0,0 +1 @@
@include('components.form.select', ['class' => 'duallist', 'multiple' => true])

View File

@@ -0,0 +1,13 @@
<select
name="{{ $name }}"
@if (isset($id_name))id="{{ $id_name }}"@endif
class="@if (isset($class)){{ $class }} @else form-control @endif"
@if (isset($style))style="{{ $style }}" @endif
@if (isset($required))required="required"@endif
@if (isset($multiple))multiple="multiple"@endif
>
@if (isset($with_empty))
<option>{{ $with_empty }}</option>
@endif
@include('components.form.options.options-tree')
</select>

View File

@@ -0,0 +1,16 @@
<select
name="{{ $name }}"
@if (isset($id_name))id="{{ $id_name }}"@endif
class="@if (isset($class)){{ $class }} @else form-control @endif"
@if (isset($style))style="{{ $style }}" @endif
@if (isset($required))required="required"@endif
@if (isset($multiple))multiple="multiple"@endif
>
@if (isset($list) && count($list))
@foreach($list as $item)
<option @if (isset($value) && ($item['id'] == $value)) selected @endif value="{{$item['id']}}">{{ $item['text'] }}</option>
@endforeach
@endif
</select>

View File

@@ -10,7 +10,7 @@
<option value=''>{{ $with_empty }}</option>
@endif
@include('components.options')
@include('components.form.options')
</select>

View File

@@ -0,0 +1,6 @@
<textarea
name="{{ $name }}"
@if (isset($id_name))id="{{ $id_name }}"@endif
class="form-control @if (isset($class)){{ $class }}@endif"
@if (isset($rows)) rows="{{ $rows }}"@endif
>@if (isset($value)){{ $value }}@endif</textarea>

View File

@@ -0,0 +1,14 @@
<div class="input-group">
<div class="input-group-append">
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-globe"></i>
</button>
<div class="dropdown-menu">
@if (is_array($translations))
@foreach ($translations as $lang => $translation)
<a class="dropdown-item" href="#">{{ $lang }} : {{ $translation }}</a>
@endforeach
@endif
</div>
</div>
</div>

View File

@@ -0,0 +1,19 @@
<div class="modal fade" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">Uploader un fichier</h4>
</div>
<div class="modal-body">
@include('components.form.uploads.upload-dropzone', ['dropzone_title' => 'Téléverser vos documents', 'dropzone_id' => 'dropzone_document'])
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,64 @@
<div class="row">
<div class="col-sm-6 offset-sm-1">
<h2 class="page-heading">{{ $dropzone_title }} <span id="counter"></span></h2>
<form method="post" action="{{ route('attachments.dropzone') }}" enctype="multipart/form-data" class="dropzone" id="{{ $dropzone_id }}">
@csrf
<div class="dz-message">
<div class="col-xs-8">
<div class="message">
<p>Glisser/Déposer vos fichiers ou cliquez pour téléverser</p>
</div>
</div>
</div>
<div class="fallback">
<input type="file" name="file" multiple>
</div>
</form>
</div>
</div>
{{--Dropzone Preview Template--}}
<div id="preview" style="display: none;">
<div class="dz-preview dz-file-preview">
<div class="dz-image"><img data-dz-thumbnail /></div>
<div class="dz-details">
<div class="dz-size"><span data-dz-size></span></div>
<div class="dz-filename"><span data-dz-name></span></div>
</div>
<div class="dz-progress"><span class="dz-upload" data-dz-uploadprogress></span></div>
<div class="dz-error-message"><span data-dz-errormessage></span></div>
<div class="dz-success-mark">
<svg width="54px" height="54px" viewBox="0 0 54 54" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.1 (9971) - http://www.bohemiancoding.com/sketch -->
<title>Check</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<path d="M23.5,31.8431458 L17.5852419,25.9283877 C16.0248253,24.3679711 13.4910294,24.366835 11.9289322,25.9289322 C10.3700136,27.4878508 10.3665912,30.0234455 11.9283877,31.5852419 L20.4147581,40.0716123 C20.5133999,40.1702541 20.6159315,40.2626649 20.7218615,40.3488435 C22.2835669,41.8725651 24.794234,41.8626202 26.3461564,40.3106978 L43.3106978,23.3461564 C44.8771021,21.7797521 44.8758057,19.2483887 43.3137085,17.6862915 C41.7547899,16.1273729 39.2176035,16.1255422 37.6538436,17.6893022 L23.5,31.8431458 Z M27,53 C41.3594035,53 53,41.3594035 53,27 C53,12.6405965 41.3594035,1 27,1 C12.6405965,1 1,12.6405965 1,27 C1,41.3594035 12.6405965,53 27,53 Z" id="Oval-2" stroke-opacity="0.198794158" stroke="#747474" fill-opacity="0.816519475" fill="#FFFFFF" sketch:type="MSShapeGroup"></path>
</g>
</svg>
</div>
<div class="dz-error-mark">
<svg width="54px" height="54px" viewBox="0 0 54 54" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<!-- Generator: Sketch 3.2.1 (9971) - http://www.bohemiancoding.com/sketch -->
<title>error</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="Check-+-Oval-2" sketch:type="MSLayerGroup" stroke="#747474" stroke-opacity="0.198794158" fill="#FFFFFF" fill-opacity="0.816519475">
<path d="M32.6568542,29 L38.3106978,23.3461564 C39.8771021,21.7797521 39.8758057,19.2483887 38.3137085,17.6862915 C36.7547899,16.1273729 34.2176035,16.1255422 32.6538436,17.6893022 L27,23.3431458 L21.3461564,17.6893022 C19.7823965,16.1255422 17.2452101,16.1273729 15.6862915,17.6862915 C14.1241943,19.2483887 14.1228979,21.7797521 15.6893022,23.3461564 L21.3431458,29 L15.6893022,34.6538436 C14.1228979,36.2202479 14.1241943,38.7516113 15.6862915,40.3137085 C17.2452101,41.8726271 19.7823965,41.8744578 21.3461564,40.3106978 L27,34.6568542 L32.6538436,40.3106978 C34.2176035,41.8744578 36.7547899,41.8726271 38.3137085,40.3137085 C39.8758057,38.7516113 39.8771021,36.2202479 38.3106978,34.6538436 L32.6568542,29 Z M27,53 C41.3594035,53 53,41.3594035 53,27 C53,12.6405965 41.3594035,1 27,1 C12.6405965,1 1,12.6405965 1,27 C1,41.3594035 12.6405965,53 27,53 Z" id="Oval-2" sketch:type="MSShapeGroup"></path>
</g>
</g>
</svg>
</div>
</div>
</div>
{{--End of Dropzone Preview Template--}}

View File

@@ -0,0 +1,19 @@
<div class="modal fade" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">Uploader un fichier</h4>
</div>
<div class="modal-body">
@include('components.form.uploads.upload-dropzone', ['dropzone_title' => 'Téléverser vos photos', 'dropzone_id' => 'dropzone_photo'])
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>

View File

@@ -1,5 +1,5 @@
<div class="input-group">
@include('components.input', ['class' => 'url'])
@include('components.form.input', ['class' => 'url'])
<div class="input-group-append">
@if (isset($with_download) && $with_download)
<div class="input-group-text btn btn-web" role="button"><i class="fa {{ (isset($status) && $status) ? 'fa-check green' : 'fa-download' }}"></i></div>