return self::sendfile($path);
}
- public static function sendfile($path, $maxage = 86400)
+ public static function sendfile($path, $maxage = 86400, $headers = [])
{
$response = response(null);
$request = request();
if (!file_exists($path)) {
- abort(404,'File not found');
+ abort(404, 'File not found');
}
$mtime = filemtime($path);
$fsize = filesize($path);
} else {
$response->header('Cache-Control', 'no-store');
}
+ foreach ($headers as $key => $value) {
+ $response->header($key, $value);
+ }
return $response->header('X-Sendfile', $path);
}
use Illuminate\Support\Carbon;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Log;
use Spatie\MediaLibrary\HasMedia;
use Spatie\MediaLibrary\InteractsWithMedia;
use Spatie\MediaLibrary\MediaCollections\Models\Collections\MediaCollection;
$cloned->model_id = $newId;
$cloned->push();
// Copy files
- $from = public_path('storage/' . $media->id);
- $to = public_path('storage/' . $cloned->id);
- if (file_exists($to)) {
- `rm -rf $to`;
- }
- $cp = "cp -R $from $to";
- `$cp`;
+ $from = storage_path('app/public/' . $media->id);
+ $to = storage_path('app/public/' . $cloned->id);
+ \Cubist\Util\Files\Files::mirrorDir($from, $to);
}
}
if(null===$o || $o==='null'){
return false;
}
+ if(\Cubist\Util\Json::isJson($o)){
+ $o=json_decode($o);
+ }
if(is_scalar($o)){
return $o==$key;
}
}
@endphp
- <!-- select2 from array -->
+ <!-- select2 from array -->
@include('crud::fields.inc.wrapper_start')
<label>{!! $field['label'] !!}</label>
@if (isset($field['allows_multiple']) && $field['allows_multiple']==true)
<input type="hidden" name="{{ $field['name'] }}" value=""/>
@endif
<select
- name="{{ $field['name'] }}@if (isset($field['allows_multiple']) && $field['allows_multiple']==true)[]@endif"
- style="width: 100%"
- @include('crud::fields.inc.attributes', ['default_class' => 'form-control select2_from_array'])
- @if (isset($field['allows_multiple']) && $field['allows_multiple']==true)multiple @endif
- @if($ajax) data-ajax="{{$field['ajax']}}" @endif
- @if($allows_html) data-allow-html="1" @endif
- data-options="{{ json_encode($field['options']) }}"
- data-value="{{is_scalar($o)?$o:json_encode($o)}}"
+ name="{{ $field['name'] }}@if (isset($field['allows_multiple']) && $field['allows_multiple']==true)[]@endif"
+ style="width: 100%"
+ @include('crud::fields.inc.attributes', ['default_class' => 'form-control select2_from_array'])
+ @if (isset($field['allows_multiple']) && $field['allows_multiple']==true)multiple @endif
+ @if($ajax) data-ajax="{{$field['ajax']}}" @endif
+ @if($allows_html) data-allow-html="1" @endif
+ data-options="{{ json_encode($field['options']) }}"
+ data-value="{{is_scalar($o)?$o:json_encode($o)}}"
>
@if (isset($field['allows_null']) && $field['allows_null']==true)
@if($is_null)
<link href="{{ asset('packages/select2/dist/css/select2.min.css') }}" rel="stylesheet"
type="text/css"/>
<link
- href="{{ asset('packages/select2-bootstrap-theme/dist/select2-bootstrap.min.css') }}"
- rel="stylesheet" type="text/css"/>
+ href="{{ asset('packages/select2-bootstrap-theme/dist/select2-bootstrap.min.css') }}"
+ rel="stylesheet" type="text/css"/>
@endpush
{{-- FIELD JS - will be loaded in the after_scripts section --}}