From df5778c3c5b0f725491dbaa7a9872114e323d0db Mon Sep 17 00:00:00 2001 From: David Bomba Date: Tue, 30 Jul 2019 08:28:38 +1000 Subject: [PATCH] Working on Javascript front end --- .../ClientPortal/InvoiceController.php | 2 +- app/Models/BaseModel.php | 12 +++++ app/Models/Client.php | 23 ++++----- app/Models/Company.php | 9 +++- app/Models/Invoice.php | 18 +++---- database/factories/InvoiceFactory.php | 2 +- .../portal/default/invoices/index.blade.php | 50 ++++++++++++++----- 7 files changed, 74 insertions(+), 42 deletions(-) diff --git a/app/Http/Controllers/ClientPortal/InvoiceController.php b/app/Http/Controllers/ClientPortal/InvoiceController.php index 76ba35d584..66bba88820 100644 --- a/app/Http/Controllers/ClientPortal/InvoiceController.php +++ b/app/Http/Controllers/ClientPortal/InvoiceController.php @@ -49,7 +49,7 @@ class InvoiceController extends Controller return ' Edit'; }) ->addColumn('checkbox', function ($invoice){ - return ''; + return ''; }) ->rawColumns(['checkbox', 'action']) ->make(true); diff --git a/app/Models/BaseModel.php b/app/Models/BaseModel.php index 6e0bb4d569..030ddb4027 100644 --- a/app/Models/BaseModel.php +++ b/app/Models/BaseModel.php @@ -14,6 +14,7 @@ namespace App\Models; use App\DataMapper\ClientSettings; use App\DataMapper\CompanySettings; use App\Filters\QueryFilters; +use App\Utils\Traits\MakesHash; use App\Utils\Traits\UserSessionAttributes; use Hashids\Hashids; use Illuminate\Database\Eloquent\Model; @@ -22,6 +23,7 @@ use Illuminate\Support\Facades\Log; class BaseModel extends Model { + use MakesHash; use UserSessionAttributes; use SoftDeletes; @@ -29,8 +31,18 @@ class BaseModel extends Model ///const CREATED_AT = 'creation_date'; //const UPDATED_AT = 'last_update'; + protected $appends = [ + 'hashed_id' + ]; + protected $dateFormat = 'Y-m-d H:i:s.u'; + public function getHashedIdAttribute() + { + return $this->encodePrimaryKey($this->id); + } + + public function __call($method, $params) { $entity = strtolower(class_basename($this)); diff --git a/app/Models/Client.php b/app/Models/Client.php index 9b47714e4d..b2e15846db 100644 --- a/app/Models/Client.php +++ b/app/Models/Client.php @@ -37,22 +37,17 @@ class Client extends BaseModel protected $presenter = 'App\Models\Presenters\ClientPresenter'; - protected $appends = [ - ]; - /* - protected $guarded = [ + + protected $hidden = [ 'id', - 'updated_at', - 'created_at', - 'deleted_at', - 'contacts', - 'primary_contact', - 'q', - 'company', - 'country', - 'shipping_country' + 'private_notes', + 'user_id', + 'company_id', + 'backup', + 'settings', + 'last_login', + 'private_notes' ]; - */ protected $fillable = [ 'name', diff --git a/app/Models/Company.php b/app/Models/Company.php index 4ac7876910..af3571bf96 100644 --- a/app/Models/Company.php +++ b/app/Models/Company.php @@ -60,7 +60,14 @@ class Company extends BaseModel 'settings', ]; - protected $appends = [ + protected $hidden = [ + 'id', + 'settings', + 'account_id', + 'company_key', + 'db', + 'domain', + 'ip', ]; protected $casts = [ diff --git a/app/Models/Invoice.php b/app/Models/Invoice.php index 244bd1c1d7..1f534d4169 100644 --- a/app/Models/Invoice.php +++ b/app/Models/Invoice.php @@ -14,7 +14,6 @@ namespace App\Models; use App\Models\Currency; use App\Models\Filterable; use App\Utils\Traits\MakesDates; -use App\Utils\Traits\MakesHash; use App\Utils\Traits\NumberFormatter; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\SoftDeletes; @@ -22,7 +21,6 @@ use Illuminate\Support\Carbon; class Invoice extends BaseModel { - use MakesHash; use SoftDeletes; use Filterable; use NumberFormatter; @@ -30,11 +28,12 @@ class Invoice extends BaseModel protected $hidden = [ 'id', - 'private_notes' - ]; - - protected $appends = [ - 'hashed_id' + 'private_notes', + 'user_id', + 'client_id', + 'company_id', + 'backup', + 'settings', ]; protected $fillable = [ @@ -89,11 +88,6 @@ class Invoice extends BaseModel const STATUS_UNPAID = -2; const STATUS_REVERSED = -3; - public function getHashedIdAttribute() - { - return $this->encodePrimaryKey($this->id); - } - public function company() { return $this->belongsTo(Company::class); diff --git a/database/factories/InvoiceFactory.php b/database/factories/InvoiceFactory.php index fade39a775..15acc255a6 100644 --- a/database/factories/InvoiceFactory.php +++ b/database/factories/InvoiceFactory.php @@ -6,7 +6,7 @@ use Faker\Generator as Faker; $factory->define(App\Models\Invoice::class, function (Faker $faker) { return [ - 'status_id' => App\Models\Invoice::STATUS_DRAFT, + 'status_id' => App\Models\Invoice::STATUS_SENT, 'invoice_number' => $faker->text(256), 'discount' => $faker->numberBetween(1,10), 'is_amount_discount' => $faker->boolean(), diff --git a/resources/views/portal/default/invoices/index.blade.php b/resources/views/portal/default/invoices/index.blade.php index 39acc1318f..5b3d61b998 100644 --- a/resources/views/portal/default/invoices/index.blade.php +++ b/resources/views/portal/default/invoices/index.blade.php @@ -15,21 +15,22 @@
- - + {!! Former::dark_button(ctrans('texts.download'))->addClass('download_invoices') !!} + {!! Former::success_button(ctrans('texts.pay_now'))->addClass('pay_invoices') !!} +
-
- {!! $html->table(['class' => 'table table-hover table-striped', 'id' => 'invoice-table'], true) !!} + {!! $html->table(['class' => 'table table-hover table-striped', 'id' => 'datatable'], true) !!}
@@ -49,8 +50,12 @@ @section('footer') + @endsection