akaunting 3.0 (the last dance)
This commit is contained in:
80
app/View/Components/Form/Group/Attachment.php
Normal file
80
app/View/Components/Form/Group/Attachment.php
Normal file
@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
namespace App\View\Components\Form\Group;
|
||||
|
||||
use App\Abstracts\View\Components\Form;
|
||||
|
||||
class Attachment extends Form
|
||||
{
|
||||
public $name = 'attachment';
|
||||
|
||||
public $type = 'file';
|
||||
|
||||
public $formGroupClass = 'sm:col-span-3';
|
||||
|
||||
public $custom_attributes = [
|
||||
'dropzone-class' => 'form-file dropzone-column w-1/2 h-32.5',
|
||||
];
|
||||
|
||||
public $file_types;
|
||||
|
||||
/**
|
||||
* Get the view / contents that represent the component.
|
||||
*
|
||||
* @return \Illuminate\Contracts\View\View|string
|
||||
*/
|
||||
public function render()
|
||||
{
|
||||
$this->setFileTypes();
|
||||
|
||||
$this->custom_attributes = $this->setCustomAttributes();
|
||||
|
||||
return view('components.form.group.attachment');
|
||||
}
|
||||
|
||||
protected function setFileTypes()
|
||||
{
|
||||
$this->file_types = [];
|
||||
|
||||
$file_type_mimes = explode(',', config('filesystems.mimes'));
|
||||
|
||||
$file_types = [];
|
||||
|
||||
foreach ($file_type_mimes as $mime) {
|
||||
$file_types[] = '.' . $mime;
|
||||
}
|
||||
|
||||
$this->file_types = implode(',', $file_types);
|
||||
}
|
||||
|
||||
protected function setCustomAttributes()
|
||||
{
|
||||
$attributes = [];
|
||||
|
||||
if (! empty($this->required)) {
|
||||
$attributes['required'] = $this->required;
|
||||
}
|
||||
|
||||
if (! empty($this->disabled)) {
|
||||
$attributes['disabled'] = $this->disabled;
|
||||
}
|
||||
|
||||
if (! empty($this->readonly)) {
|
||||
$attributes['readonly'] = $this->readonly;
|
||||
}
|
||||
|
||||
if (! empty($this->options)) {
|
||||
$attributes['options'] = $this->options;
|
||||
}
|
||||
|
||||
if (! empty($this->multiple)) {
|
||||
$attributes['multiple'] = $this->multiple;
|
||||
}
|
||||
|
||||
foreach ($this->custom_attributes as $key => $value) {
|
||||
$attributes[$key] = $value;
|
||||
}
|
||||
|
||||
return $attributes;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user