Migrate backend to Porto architecture and fix minor bugs

- Fully transitioned the backend to the Porto architectural pattern
- Improved code organization and maintainability
- Fixed minor bugs and inconsistencies
This commit is contained in:
F4ilji
2025-05-12 08:47:43 +05:00
parent 76deaf75f3
commit c01016a154
620 changed files with 16218 additions and 6073 deletions
@@ -0,0 +1,17 @@
<?php
namespace App\Containers\Widget\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class ContactWidget extends Model
{
use HasFactory;
protected $guarded = false;
protected $casts = [
'content' => 'array',
];
}
@@ -0,0 +1,26 @@
<?php
namespace App\Containers\Widget\Models;
use App\Containers\Widget\Enums\CustomFormStatus;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class CustomForm extends Model
{
use HasFactory;
protected $guarded = false;
protected $casts = [
'columns' => 'array',
'status' => CustomFormStatus::class,
'mail_settings' => 'array',
'settings' => 'array',
];
public function responses()
{
return $this->hasMany(CustomFormResponse::class, 'custom_form_id', 'id');
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Containers\Widget\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class CustomFormResponse extends Model
{
use HasFactory;
protected $guarded = false;
protected $casts = [
'answers' => 'array'
];
public function form()
{
return $this->belongsTo(CustomForm::class, 'custom_form_id', 'id');
}
}
@@ -0,0 +1,17 @@
<?php
namespace App\Containers\Widget\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class PageReferenceList extends Model
{
use HasFactory;
protected $guarded = false;
protected $casts = [
'content' => 'array',
];
}
+29
View File
@@ -0,0 +1,29 @@
<?php
namespace App\Containers\Widget\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class Slide extends Model
{
use HasFactory;
protected $guarded = false;
protected $casts = [
'settings' => 'array',
'image' => 'array',
];
public function slider(): BelongsTo
{
return $this->belongsTo(Slider::class);
}
public function slidable()
{
return $this->morphTo();
}
}
+21
View File
@@ -0,0 +1,21 @@
<?php
namespace App\Containers\Widget\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;
class Slider extends Model
{
use HasFactory;
protected $guarded = false;
public function slides(): HasMany
{
return $this->hasMany(Slide::class);
}
}