diff --git a/app/Console/Commands/MobileLocalization.php b/app/Console/Commands/MobileLocalization.php
index ddc8c4e3b4..6692c5281a 100644
--- a/app/Console/Commands/MobileLocalization.php
+++ b/app/Console/Commands/MobileLocalization.php
@@ -61,7 +61,7 @@ class MobileLocalization extends Command
private function laravelResources()
{
- $resources = $this->getResources();
+ $resources =(array)$this->getResources();
if(is_iterable($resources)){
foreach ($resources as $key => $val) {
diff --git a/app/Export/CSV/BaseExport.php b/app/Export/CSV/BaseExport.php
index a05e61e7b1..55b931550c 100644
--- a/app/Export/CSV/BaseExport.php
+++ b/app/Export/CSV/BaseExport.php
@@ -628,11 +628,11 @@ class BaseExport
}
if(in_array($column, ['client.user_id', 'user_id'])) {
- return $entity->client->user->present()->name();
+ return $entity->client->user ? $entity->client->user->present()->name() : '';
}
if(in_array($column, ['client.assigned_user_id', 'assigned_user_id'])) {
- return $entity->client->assigned_user->present()->name();
+ return $entity->client->assigned_user ? $entity->client->assigned_user->present()->name() : '';
}
if(in_array($column, ['client.country_id', 'country_id'])) {
@@ -760,7 +760,7 @@ class BaseExport
return $transformed_payment[$column];
} elseif (array_key_exists(str_replace("payment.", "", $column), $transformed_payment)) {
return $transformed_payment[$column];
- }
+ }
// nlog("export: Could not resolve payment key: {$column}");
diff --git a/app/Export/CSV/CreditExport.php b/app/Export/CSV/CreditExport.php
index d0a29ea3c7..19c2383e4a 100644
--- a/app/Export/CSV/CreditExport.php
+++ b/app/Export/CSV/CreditExport.php
@@ -177,6 +177,14 @@ class CreditExport extends BaseExport
$entity['credit.status'] = $credit->stringStatus($credit->status_id);
}
+ if (in_array('credit.assigned_user_id', $this->input['report_keys'])) {
+ $entity['credit.assigned_user_id'] = $credit->assigned_user ? $credit->assigned_user->present()->name(): '';
+ }
+
+ if (in_array('credit.user_id', $this->input['report_keys'])) {
+ $entity['credit.user_id'] = $credit->user ? $credit->user->present()->name(): '';
+ }
+
return $entity;
}
}
diff --git a/app/Export/CSV/InvoiceExport.php b/app/Export/CSV/InvoiceExport.php
index 02cadb7ffe..73afd9d4ff 100644
--- a/app/Export/CSV/InvoiceExport.php
+++ b/app/Export/CSV/InvoiceExport.php
@@ -151,7 +151,15 @@ class InvoiceExport extends BaseExport
$entity['invoice.auto_bill_enabled'] = $invoice->auto_bill_enabled ? ctrans('texts.yes') : ctrans('texts.no');
}
-
+ if (in_array('invoice.assigned_user_id', $this->input['report_keys'])) {
+ $entity['invoice.assigned_user_id'] = $invoice->assigned_user ? $invoice->assigned_user->present()->name(): '';
+ }
+
+ if (in_array('invoice.user_id', $this->input['report_keys'])) {
+ $entity['invoice.user_id'] = $invoice->user ? $invoice->user->present()->name(): '';
+ }
+
+
return $entity;
}
}
diff --git a/app/Export/CSV/InvoiceItemExport.php b/app/Export/CSV/InvoiceItemExport.php
index cf1fddd267..33924e443f 100644
--- a/app/Export/CSV/InvoiceItemExport.php
+++ b/app/Export/CSV/InvoiceItemExport.php
@@ -227,6 +227,13 @@ class InvoiceItemExport extends BaseExport
$entity['invoice.recurring_id'] = $invoice->recurring_invoice->number ?? '';
}
+ if (in_array('invoice.assigned_user_id', $this->input['report_keys'])) {
+ $entity['invoice.assigned_user_id'] = $invoice->assigned_user ? $invoice->assigned_user->present()->name(): '';
+ }
+
+ if (in_array('invoice.user_id', $this->input['report_keys'])) {
+ $entity['invoice.user_id'] = $invoice->user ? $invoice->user->present()->name(): '';
+ }
return $entity;
}
diff --git a/app/Export/CSV/PaymentExport.php b/app/Export/CSV/PaymentExport.php
index 48f996fae7..c92fc5983f 100644
--- a/app/Export/CSV/PaymentExport.php
+++ b/app/Export/CSV/PaymentExport.php
@@ -167,6 +167,14 @@ class PaymentExport extends BaseExport
$entity['gateway'] = $payment->gateway_type ? $payment->gateway_type->name : 'Unknown Type';
}
+ if (in_array('payment.assigned_user_id', $this->input['report_keys'])) {
+ $entity['payment.assigned_user_id'] = $payment->assigned_user ? $payment->assigned_user->present()->name() : '';
+ }
+
+ if (in_array('payment.user_id', $this->input['report_keys'])) {
+ $entity['payment.user_id'] = $payment->user ? $payment->user->present()->name() : '';
+ }
+
// $entity['invoices'] = $payment->invoices()->exists() ? $payment->invoices->pluck('number')->implode(',') : '';
return $entity;
diff --git a/app/Export/CSV/QuoteExport.php b/app/Export/CSV/QuoteExport.php
index eba6adbcef..591312a0e8 100644
--- a/app/Export/CSV/QuoteExport.php
+++ b/app/Export/CSV/QuoteExport.php
@@ -149,6 +149,15 @@ class QuoteExport extends BaseExport
$entity['quote.invoice'] = $quote->invoice ? $quote->invoice->number : '';
}
+ if (in_array('quote.assigned_user_id', $this->input['report_keys'])) {
+ $entity['quote.assigned_user_id'] = $quote->assigned_user ? $quote->assigned_user->present()->name(): '';
+ }
+
+ if (in_array('quote.user_id', $this->input['report_keys'])) {
+ $entity['quote.user_id'] = $quote->user ? $quote->user->present()->name(): '';
+ }
+
+
return $entity;
}
}
diff --git a/app/Export/CSV/QuoteItemExport.php b/app/Export/CSV/QuoteItemExport.php
index fe8cbb593a..f41e99f588 100644
--- a/app/Export/CSV/QuoteItemExport.php
+++ b/app/Export/CSV/QuoteItemExport.php
@@ -198,6 +198,16 @@ class QuoteItemExport extends BaseExport
if (in_array('status_id', $this->input['report_keys'])) {
$entity['status'] = $quote->stringStatus($quote->status_id);
}
+
+ if (in_array('quote.assigned_user_id', $this->input['report_keys'])) {
+ $entity['quote.assigned_user_id'] = $quote->assigned_user ? $quote->assigned_user->present()->name(): '';
+ }
+
+ if (in_array('quote.user_id', $this->input['report_keys'])) {
+ $entity['quote.user_id'] = $quote->user ? $quote->user->present()->name(): '';
+ }
+
+
return $entity;
}
diff --git a/app/Export/CSV/RecurringInvoiceExport.php b/app/Export/CSV/RecurringInvoiceExport.php
index 02e51cac03..18bf306a03 100644
--- a/app/Export/CSV/RecurringInvoiceExport.php
+++ b/app/Export/CSV/RecurringInvoiceExport.php
@@ -157,6 +157,15 @@ class RecurringInvoiceExport extends BaseExport
$entity['recurring_invoice.auto_bill_enabled'] = $invoice->auto_bill_enabled ? ctrans('texts.yes') : ctrans('texts.no');
}
+ if (in_array('recurring_invoice.assigned_user_id', $this->input['report_keys'])) {
+ $entity['recurring_invoice.assigned_user_id'] = $invoice->assigned_user ? $invoice->assigned_user->present()->name() : '';
+ }
+
+ if (in_array('recurring_invoice.user_id', $this->input['report_keys'])) {
+ $entity['recurring_invoice.user_id'] = $invoice->user ? $invoice->user->present()->name() : '';
+ }
+
+
return $entity;
}
}
diff --git a/app/Export/Decorators/ClientDecorator.php b/app/Export/Decorators/ClientDecorator.php
new file mode 100644
index 0000000000..83fbdad948
--- /dev/null
+++ b/app/Export/Decorators/ClientDecorator.php
@@ -0,0 +1,20 @@
+ $value = (new ClientDecorator($entity, $key))->transform(),
+ ($entity instanceof Payment) => $value = (new PaymentDecorator($entity, $key))->transform(),
+ ($entity instanceof Invoice) => $value = (new InvoiceDecorator($entity, $key))->transform(),
+ ($entity instanceof RecurringInvoice) => $value = (new RecurringInvoiceDecorator($entity, $key))->transform(),
+ ($entity instanceof Credit) => $value = (new CreditDecorator($entity, $key))->transform(),
+ ($entity instanceof Quote) => $value = (new QuoteDecorator($entity, $key))->transform(),
+ ($entity instanceof Task) => $value = (new TaskDecorator($entity, $key))->transform(),
+ ($entity instanceof Expense) => $value = (new ExpenseDecorator($entity, $key))->transform(),
+ ($entity instanceof Project) => $value = (new ProjectDecorator($entity, $key))->transform(),
+ ($entity instanceof Product) => $value = (new ProductDecorator($entity, $key))->transform(),
+ ($entity instanceof Vendor) => $value = (new VendorDecorator($entity, $key))->transform(),
+ ($entity instanceof PurchaseOrder) => $value = (new PurchaseOrderDecorator($entity, $key))->transform(),
+ default => $value = '',
+ };
+
+ return $value;
+ }
+
+}
diff --git a/app/Export/Decorators/DecoratorInterface.php b/app/Export/Decorators/DecoratorInterface.php
new file mode 100644
index 0000000000..a19b231f8f
--- /dev/null
+++ b/app/Export/Decorators/DecoratorInterface.php
@@ -0,0 +1,16 @@
+markdown_email_enabled = true;
$company->markdown_enabled = false;
$company->tax_data = new TaxModel();
-
+ $company->first_month_of_year = 1;
return $company;
}
}
diff --git a/app/Filters/DesignFilters.php b/app/Filters/DesignFilters.php
index bd489b05c4..1526dcc7e5 100644
--- a/app/Filters/DesignFilters.php
+++ b/app/Filters/DesignFilters.php
@@ -93,6 +93,7 @@ class DesignFilters extends QueryFilters
return $this->builder->where('is_template', $bool_val);
}
+
/**
* Filter the designs by `is_custom` column.
*
diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php
index e63f7fd471..73b5cfa4b5 100644
--- a/app/Http/Controllers/Auth/LoginController.php
+++ b/app/Http/Controllers/Auth/LoginController.php
@@ -527,7 +527,10 @@ class LoginController extends BaseController
if (request()->has('id_token')) {
$user = $google->getTokenResponse(request()->input('id_token'));
- } else {
+ }elseif(request()->has('access_token')){
+ $user = $google->harvestUser(request()->input('access_token'));
+ }
+ else {
return response()->json(['message' => 'Illegal request'], 403);
}
diff --git a/app/Http/Controllers/ClientController.php b/app/Http/Controllers/ClientController.php
index 158688ba55..c16fd8bd02 100644
--- a/app/Http/Controllers/ClientController.php
+++ b/app/Http/Controllers/ClientController.php
@@ -11,36 +11,37 @@
namespace App\Http\Controllers;
-use App\Events\Client\ClientWasCreated;
-use App\Events\Client\ClientWasUpdated;
-use App\Factory\ClientFactory;
-use App\Filters\ClientFilters;
-use App\Http\Requests\Client\BulkClientRequest;
-use App\Http\Requests\Client\CreateClientRequest;
-use App\Http\Requests\Client\DestroyClientRequest;
-use App\Http\Requests\Client\EditClientRequest;
-use App\Http\Requests\Client\PurgeClientRequest;
-use App\Http\Requests\Client\ReactivateClientEmailRequest;
-use App\Http\Requests\Client\ShowClientRequest;
-use App\Http\Requests\Client\StoreClientRequest;
-use App\Http\Requests\Client\UpdateClientRequest;
-use App\Http\Requests\Client\UploadClientRequest;
-use App\Jobs\Client\UpdateTaxData;
-use App\Jobs\PostMark\ProcessPostmarkWebhook;
-use App\Models\Account;
+use App\Utils\Ninja;
use App\Models\Client;
+use App\Models\Account;
use App\Models\Company;
use App\Models\SystemLog;
-use App\Repositories\ClientRepository;
-use App\Transformers\ClientTransformer;
-use App\Utils\Ninja;
-use App\Utils\Traits\BulkOptions;
-use App\Utils\Traits\MakesHash;
-use App\Utils\Traits\SavesDocuments;
-use App\Utils\Traits\Uploadable;
-use Illuminate\Http\Response;
-use Illuminate\Support\Facades\Storage;
use Postmark\PostmarkClient;
+use Illuminate\Http\Response;
+use App\Factory\ClientFactory;
+use App\Filters\ClientFilters;
+use App\Utils\Traits\MakesHash;
+use App\Utils\Traits\Uploadable;
+use App\Utils\Traits\BulkOptions;
+use App\Jobs\Client\UpdateTaxData;
+use App\Utils\Traits\SavesDocuments;
+use App\Repositories\ClientRepository;
+use App\Events\Client\ClientWasCreated;
+use App\Events\Client\ClientWasUpdated;
+use App\Transformers\ClientTransformer;
+use Illuminate\Support\Facades\Storage;
+use App\Services\Template\TemplateAction;
+use App\Jobs\PostMark\ProcessPostmarkWebhook;
+use App\Http\Requests\Client\BulkClientRequest;
+use App\Http\Requests\Client\EditClientRequest;
+use App\Http\Requests\Client\ShowClientRequest;
+use App\Http\Requests\Client\PurgeClientRequest;
+use App\Http\Requests\Client\StoreClientRequest;
+use App\Http\Requests\Client\CreateClientRequest;
+use App\Http\Requests\Client\UpdateClientRequest;
+use App\Http\Requests\Client\UploadClientRequest;
+use App\Http\Requests\Client\DestroyClientRequest;
+use App\Http\Requests\Client\ReactivateClientEmailRequest;
/**
* Class ClientController.
@@ -217,12 +218,31 @@ class ClientController extends BaseController
$clients = Client::withTrashed()
->company()
->whereIn('id', $request->ids)
- ->cursor()
- ->each(function ($client) use ($action, $user) {
- if ($user->can('edit', $client)) {
- $this->client_repo->{$action}($client);
- }
- });
+ ->get();
+
+ if($action == 'template' && $user->can('view', $clients->first())) {
+
+ $hash_or_response = $request->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+
+ TemplateAction::dispatch(
+ $clients->pluck('id')->toArray(),
+ $request->template_id,
+ Client::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
+
+ $clients->each(function ($client) use ($action, $user) {
+ if ($user->can('edit', $client)) {
+ $this->client_repo->{$action}($client);
+ }
+ });
return $this->listResponse(Client::query()->withTrashed()->company()->whereIn('id', $request->ids));
}
@@ -364,8 +384,15 @@ class ClientController extends BaseController
try {
+ /** @var \Postmark\Models\DynamicResponseModel $response */
$response = $postmark->activateBounce((int)$bounce_id);
+ if($response && $response?->Message == 'OK' && !$response->Bounce->Inactive && $response->Bounce->Email){
+
+ $email = $response->Bounce->Email;
+ //remove email from quarantine. //@TODO
+ }
+
return response()->json(['message' => 'Success'], 200);
} catch(\Exception $e) {
diff --git a/app/Http/Controllers/CreditController.php b/app/Http/Controllers/CreditController.php
index 24db27876e..439c986f19 100644
--- a/app/Http/Controllers/CreditController.php
+++ b/app/Http/Controllers/CreditController.php
@@ -11,35 +11,36 @@
namespace App\Http\Controllers;
-use App\Events\Credit\CreditWasCreated;
-use App\Events\Credit\CreditWasUpdated;
-use App\Factory\CloneCreditFactory;
+use App\Utils\Ninja;
+use App\Models\Client;
+use App\Models\Credit;
+use App\Models\Account;
+use App\Models\Invoice;
+use Illuminate\Http\Response;
use App\Factory\CreditFactory;
use App\Filters\CreditFilters;
-use App\Http\Requests\Credit\ActionCreditRequest;
+use App\Jobs\Credit\ZipCredits;
+use App\Utils\Traits\MakesHash;
+use App\Jobs\Entity\EmailEntity;
+use App\Factory\CloneCreditFactory;
+use App\Services\PdfMaker\PdfMerge;
+use Illuminate\Support\Facades\App;
+use App\Utils\Traits\SavesDocuments;
+use App\Repositories\CreditRepository;
+use App\Events\Credit\CreditWasCreated;
+use App\Events\Credit\CreditWasUpdated;
+use App\Transformers\CreditTransformer;
+use Illuminate\Support\Facades\Storage;
+use App\Services\Template\TemplateAction;
use App\Http\Requests\Credit\BulkCreditRequest;
-use App\Http\Requests\Credit\CreateCreditRequest;
-use App\Http\Requests\Credit\DestroyCreditRequest;
use App\Http\Requests\Credit\EditCreditRequest;
use App\Http\Requests\Credit\ShowCreditRequest;
use App\Http\Requests\Credit\StoreCreditRequest;
+use App\Http\Requests\Credit\ActionCreditRequest;
+use App\Http\Requests\Credit\CreateCreditRequest;
use App\Http\Requests\Credit\UpdateCreditRequest;
use App\Http\Requests\Credit\UploadCreditRequest;
-use App\Jobs\Credit\ZipCredits;
-use App\Jobs\Entity\EmailEntity;
-use App\Models\Account;
-use App\Models\Client;
-use App\Models\Credit;
-use App\Models\Invoice;
-use App\Repositories\CreditRepository;
-use App\Services\PdfMaker\PdfMerge;
-use App\Transformers\CreditTransformer;
-use App\Utils\Ninja;
-use App\Utils\Traits\MakesHash;
-use App\Utils\Traits\SavesDocuments;
-use Illuminate\Http\Response;
-use Illuminate\Support\Facades\App;
-use Illuminate\Support\Facades\Storage;
+use App\Http\Requests\Credit\DestroyCreditRequest;
/**
* Class CreditController.
@@ -550,6 +551,25 @@ class CreditController extends BaseController
}, 'print.pdf', ['Content-Type' => 'application/pdf']);
}
+
+ if($action == 'template' && $user->can('view', $credits->first())) {
+
+ $hash_or_response = $request->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+
+ TemplateAction::dispatch(
+ $credits->pluck('hashed_id')->toArray(),
+ $request->template_id,
+ Credit::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
+
$credits->each(function ($credit, $key) use ($action, $user) {
if ($user->can('edit', $credit)) {
$this->performAction($credit, $action, true);
diff --git a/app/Http/Controllers/EmailController.php b/app/Http/Controllers/EmailController.php
index fdcf887beb..76b0634e85 100644
--- a/app/Http/Controllers/EmailController.php
+++ b/app/Http/Controllers/EmailController.php
@@ -69,8 +69,11 @@ class EmailController extends BaseController
/** @var \App\Models\User $user */
$user = auth()->user();
- if ($request->has('cc_email') && $request->cc_email && (Ninja::isSelfHost() || $user->account->isPaidHostedClient())) {
- $mo->cc[] = new Address($request->cc_email);
+ if ($request->has('cc_email') && (Ninja::isSelfHost() || $user->account->isPaidHostedClient())) {
+
+ foreach($request->cc_email as $email)
+ $mo->cc[] = new Address($email);
+
}
$entity_obj->invitations->each(function ($invitation) use ($entity_obj, $mo) {
diff --git a/app/Http/Controllers/ExportController.php b/app/Http/Controllers/ExportController.php
index 55038c9895..d61de3172a 100644
--- a/app/Http/Controllers/ExportController.php
+++ b/app/Http/Controllers/ExportController.php
@@ -56,11 +56,14 @@ class ExportController extends BaseController
*/
public function index(StoreExportRequest $request)
{
+ /** @var \App\Models\User $user */
+ $user = auth()->user();
+
$hash = Str::uuid();
$url = \Illuminate\Support\Facades\URL::temporarySignedRoute('protected_download', now()->addHour(), ['hash' => $hash]);
Cache::put($hash, $url, now()->addHour());
- CompanyExport::dispatch(auth()->user()->getCompany(), auth()->user(), $hash);
+ CompanyExport::dispatch($user->getCompany(), $user, $hash);
return response()->json(['message' => 'Processing', 'url' => $url], 200);
}
diff --git a/app/Http/Controllers/InvoiceController.php b/app/Http/Controllers/InvoiceController.php
index 840899a917..6e6fee2c7f 100644
--- a/app/Http/Controllers/InvoiceController.php
+++ b/app/Http/Controllers/InvoiceController.php
@@ -416,7 +416,6 @@ class InvoiceController extends BaseController
$invoice->service()
->triggeredActions($request)
- // ->deletePdf()
->adjustInventory($old_invoice);
event(new InvoiceWasUpdated($invoice, $invoice->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null)));
diff --git a/app/Http/Controllers/PaymentController.php b/app/Http/Controllers/PaymentController.php
index adc3500aca..d413c70296 100644
--- a/app/Http/Controllers/PaymentController.php
+++ b/app/Http/Controllers/PaymentController.php
@@ -11,25 +11,27 @@
namespace App\Http\Controllers;
-use App\Events\Payment\PaymentWasUpdated;
-use App\Factory\PaymentFactory;
-use App\Filters\PaymentFilters;
-use App\Http\Requests\Payment\CreatePaymentRequest;
-use App\Http\Requests\Payment\DestroyPaymentRequest;
-use App\Http\Requests\Payment\EditPaymentRequest;
-use App\Http\Requests\Payment\RefundPaymentRequest;
-use App\Http\Requests\Payment\ShowPaymentRequest;
-use App\Http\Requests\Payment\StorePaymentRequest;
-use App\Http\Requests\Payment\UpdatePaymentRequest;
-use App\Http\Requests\Payment\UploadPaymentRequest;
+use App\Utils\Ninja;
use App\Models\Account;
use App\Models\Payment;
-use App\Repositories\PaymentRepository;
-use App\Transformers\PaymentTransformer;
-use App\Utils\Ninja;
+use Illuminate\Http\Response;
+use App\Factory\PaymentFactory;
+use App\Filters\PaymentFilters;
use App\Utils\Traits\MakesHash;
use App\Utils\Traits\SavesDocuments;
-use Illuminate\Http\Response;
+use App\Repositories\PaymentRepository;
+use App\Transformers\PaymentTransformer;
+use App\Events\Payment\PaymentWasUpdated;
+use App\Services\Template\TemplateAction;
+use App\Http\Requests\Payment\EditPaymentRequest;
+use App\Http\Requests\Payment\ShowPaymentRequest;
+use App\Http\Requests\Payment\StorePaymentRequest;
+use App\Http\Requests\Payment\CreatePaymentRequest;
+use App\Http\Requests\Payment\RefundPaymentRequest;
+use App\Http\Requests\Payment\UpdatePaymentRequest;
+use App\Http\Requests\Payment\UploadPaymentRequest;
+use App\Http\Requests\Payment\DestroyPaymentRequest;
+use App\Http\Requests\Payment\BulkActionPaymentRequest;
/**
* Class PaymentController.
@@ -499,16 +501,39 @@ class PaymentController extends BaseController
* ),
* )
*/
- public function bulk()
+ public function bulk(BulkActionPaymentRequest $request)
{
/** @var \App\Models\User $user */
$user = auth()->user();
- $action = request()->input('action');
+ $action = $request->input('action');
- $ids = request()->input('ids');
+ $ids = $request->input('ids');
+
+ $payments = Payment::withTrashed()->whereIn('id', $this->transformKeys($ids))->company()->get();
+
+ if (!$payments) {
+ return response()->json(['message' => ctrans('texts.record_not_found')]);
+ }
+
+ if($action == 'template' && $user->can('view', $payments->first())) {
+
+ $hash_or_response = request()->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+nlog($payments->pluck('hashed_id')->toArray());
+ TemplateAction::dispatch(
+ $payments->pluck('hashed_id')->toArray(),
+ $request->template_id,
+ Payment::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
- $payments = Payment::withTrashed()->find($this->transformKeys($ids));
$payments->each(function ($payment, $key) use ($action, $user) {
if ($user->can('edit', $payment)) {
diff --git a/app/Http/Controllers/PreviewController.php b/app/Http/Controllers/PreviewController.php
index 1c7cab3601..0e0e2a420c 100644
--- a/app/Http/Controllers/PreviewController.php
+++ b/app/Http/Controllers/PreviewController.php
@@ -137,9 +137,9 @@ class PreviewController extends BaseController
*/
public function show()
{
- // if(request()->has('template')) {
+ if(request()->has('template')) {
return $this->template();
- // }
+ }
if (request()->has('entity') &&
request()->has('entity_id') &&
diff --git a/app/Http/Controllers/ProjectController.php b/app/Http/Controllers/ProjectController.php
index 085e7b1d7d..79dc2c3b8a 100644
--- a/app/Http/Controllers/ProjectController.php
+++ b/app/Http/Controllers/ProjectController.php
@@ -11,23 +11,25 @@
namespace App\Http\Controllers;
+use App\Models\Account;
+use App\Models\Project;
+use Illuminate\Http\Response;
use App\Factory\ProjectFactory;
use App\Filters\ProjectFilters;
-use App\Http\Requests\Project\CreateProjectRequest;
-use App\Http\Requests\Project\DestroyProjectRequest;
+use App\Utils\Traits\MakesHash;
+use App\Utils\Traits\SavesDocuments;
+use App\Utils\Traits\GeneratesCounter;
+use App\Repositories\ProjectRepository;
+use App\Transformers\ProjectTransformer;
+use App\Services\Template\TemplateAction;
use App\Http\Requests\Project\EditProjectRequest;
use App\Http\Requests\Project\ShowProjectRequest;
use App\Http\Requests\Project\StoreProjectRequest;
+use App\Http\Requests\Project\CreateProjectRequest;
use App\Http\Requests\Project\UpdateProjectRequest;
use App\Http\Requests\Project\UploadProjectRequest;
-use App\Models\Account;
-use App\Models\Project;
-use App\Repositories\ProjectRepository;
-use App\Transformers\ProjectTransformer;
-use App\Utils\Traits\GeneratesCounter;
-use App\Utils\Traits\MakesHash;
-use App\Utils\Traits\SavesDocuments;
-use Illuminate\Http\Response;
+use App\Http\Requests\Project\DestroyProjectRequest;
+use App\Http\Requests\Project\BulkProjectRequest;
/**
* Class ProjectController.
@@ -490,18 +492,36 @@ class ProjectController extends BaseController
* ),
* )
*/
- public function bulk()
+ public function bulk(BulkProjectRequest $request)
{
/** @var \App\Models\User $user */
$user = auth()->user();
- $action = request()->input('action');
+ $action = $request->input('action');
- $ids = request()->input('ids');
+ $ids = $request->input('ids');
- $projects = Project::withTrashed()->find($this->transformKeys($ids));
+ $projects = Project::withTrashed()->whereIn('id', $this->transformKeys($ids))->company()->get();
- $projects->each(function ($project, $key) use ($action, $user) {
+ if($action == 'template' && $user->can('view', $projects->first())) {
+
+ $hash_or_response = $request->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+
+ TemplateAction::dispatch(
+ $projects->pluck('hashed_id')->toArray(),
+ $request->template_id,
+ Project::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
+
+ $projects->each(function ($project) use ($action, $user) {
if ($user->can('edit', $project)) {
$this->project_repo->{$action}($project);
}
diff --git a/app/Http/Controllers/ProtectedDownloadController.php b/app/Http/Controllers/ProtectedDownloadController.php
index 51c9077419..42a275b4a3 100644
--- a/app/Http/Controllers/ProtectedDownloadController.php
+++ b/app/Http/Controllers/ProtectedDownloadController.php
@@ -19,10 +19,10 @@ use Illuminate\Support\Facades\Storage;
class ProtectedDownloadController extends BaseController
{
- public function index(Request $request)
+ public function index(Request $request, string $hash)
{
/** @var string $hashed_path */
- $hashed_path = Cache::pull($request->hash);
+ $hashed_path = Cache::pull($hash);
if (!$hashed_path) {
throw new SystemError('File no longer available', 404);
diff --git a/app/Http/Controllers/PurchaseOrderController.php b/app/Http/Controllers/PurchaseOrderController.php
index 4b0ad2e006..61fa572c5b 100644
--- a/app/Http/Controllers/PurchaseOrderController.php
+++ b/app/Http/Controllers/PurchaseOrderController.php
@@ -11,33 +11,34 @@
namespace App\Http\Controllers;
-use App\Events\PurchaseOrder\PurchaseOrderWasCreated;
-use App\Events\PurchaseOrder\PurchaseOrderWasUpdated;
+use App\Utils\Ninja;
+use App\Models\Client;
+use App\Models\Account;
+use App\Models\PurchaseOrder;
+use Illuminate\Http\Response;
+use App\Utils\Traits\MakesHash;
+use App\Jobs\Entity\CreateRawPdf;
+use App\Services\PdfMaker\PdfMerge;
+use App\Utils\Traits\SavesDocuments;
use App\Factory\PurchaseOrderFactory;
use App\Filters\PurchaseOrderFilters;
-use App\Http\Requests\PurchaseOrder\ActionPurchaseOrderRequest;
+use Illuminate\Support\Facades\Storage;
+use App\Services\Template\TemplateAction;
+use App\Jobs\PurchaseOrder\ZipPurchaseOrders;
+use App\Repositories\PurchaseOrderRepository;
+use App\Jobs\PurchaseOrder\PurchaseOrderEmail;
+use App\Transformers\PurchaseOrderTransformer;
+use App\Events\PurchaseOrder\PurchaseOrderWasCreated;
+use App\Events\PurchaseOrder\PurchaseOrderWasUpdated;
use App\Http\Requests\PurchaseOrder\BulkPurchaseOrderRequest;
-use App\Http\Requests\PurchaseOrder\CreatePurchaseOrderRequest;
-use App\Http\Requests\PurchaseOrder\DestroyPurchaseOrderRequest;
use App\Http\Requests\PurchaseOrder\EditPurchaseOrderRequest;
use App\Http\Requests\PurchaseOrder\ShowPurchaseOrderRequest;
use App\Http\Requests\PurchaseOrder\StorePurchaseOrderRequest;
+use App\Http\Requests\PurchaseOrder\ActionPurchaseOrderRequest;
+use App\Http\Requests\PurchaseOrder\CreatePurchaseOrderRequest;
use App\Http\Requests\PurchaseOrder\UpdatePurchaseOrderRequest;
use App\Http\Requests\PurchaseOrder\UploadPurchaseOrderRequest;
-use App\Jobs\Entity\CreateRawPdf;
-use App\Jobs\PurchaseOrder\PurchaseOrderEmail;
-use App\Jobs\PurchaseOrder\ZipPurchaseOrders;
-use App\Models\Account;
-use App\Models\Client;
-use App\Models\PurchaseOrder;
-use App\Repositories\PurchaseOrderRepository;
-use App\Services\PdfMaker\PdfMerge;
-use App\Transformers\PurchaseOrderTransformer;
-use App\Utils\Ninja;
-use App\Utils\Traits\MakesHash;
-use App\Utils\Traits\SavesDocuments;
-use Illuminate\Http\Response;
-use Illuminate\Support\Facades\Storage;
+use App\Http\Requests\PurchaseOrder\DestroyPurchaseOrderRequest;
class PurchaseOrderController extends BaseController
{
@@ -524,6 +525,24 @@ class PurchaseOrderController extends BaseController
}, 'print.pdf', ['Content-Type' => 'application/pdf']);
}
+ if($action == 'template' && $user->can('view', $purchase_orders->first())) {
+
+ $hash_or_response = $request->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+
+ TemplateAction::dispatch(
+ $purchase_orders->pluck('hashed_id')->toArray(),
+ $request->template_id,
+ PurchaseOrder::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
+
/*
* Send the other actions to the switch
*/
diff --git a/app/Http/Controllers/QuoteController.php b/app/Http/Controllers/QuoteController.php
index 0a85ec8e94..b8fd4bae7f 100644
--- a/app/Http/Controllers/QuoteController.php
+++ b/app/Http/Controllers/QuoteController.php
@@ -11,40 +11,41 @@
namespace App\Http\Controllers;
-use App\Events\Quote\QuoteWasCreated;
-use App\Events\Quote\QuoteWasUpdated;
-use App\Factory\CloneQuoteFactory;
-use App\Factory\CloneQuoteToInvoiceFactory;
+use App\Utils\Ninja;
+use App\Models\Quote;
+use App\Models\Client;
+use App\Models\Account;
+use App\Models\Invoice;
+use App\Models\Project;
+use Illuminate\Http\Request;
use App\Factory\QuoteFactory;
use App\Filters\QuoteFilters;
-use App\Http\Requests\Quote\ActionQuoteRequest;
-use App\Http\Requests\Quote\BulkActionQuoteRequest;
-use App\Http\Requests\Quote\CreateQuoteRequest;
-use App\Http\Requests\Quote\DestroyQuoteRequest;
+use App\Jobs\Quote\ZipQuotes;
+use Illuminate\Http\Response;
+use App\Utils\Traits\MakesHash;
+use App\Factory\CloneQuoteFactory;
+use App\Services\PdfMaker\PdfMerge;
+use Illuminate\Support\Facades\App;
+use App\Utils\Traits\SavesDocuments;
+use App\Events\Quote\QuoteWasCreated;
+use App\Events\Quote\QuoteWasUpdated;
+use App\Repositories\QuoteRepository;
+use App\Transformers\QuoteTransformer;
+use App\Utils\Traits\GeneratesCounter;
+use Illuminate\Support\Facades\Storage;
+use App\Transformers\InvoiceTransformer;
+use App\Transformers\ProjectTransformer;
+use App\Services\Template\TemplateAction;
+use App\Factory\CloneQuoteToInvoiceFactory;
use App\Http\Requests\Quote\EditQuoteRequest;
use App\Http\Requests\Quote\ShowQuoteRequest;
use App\Http\Requests\Quote\StoreQuoteRequest;
+use App\Http\Requests\Quote\ActionQuoteRequest;
+use App\Http\Requests\Quote\CreateQuoteRequest;
use App\Http\Requests\Quote\UpdateQuoteRequest;
use App\Http\Requests\Quote\UploadQuoteRequest;
-use App\Jobs\Quote\ZipQuotes;
-use App\Models\Account;
-use App\Models\Client;
-use App\Models\Invoice;
-use App\Models\Project;
-use App\Models\Quote;
-use App\Repositories\QuoteRepository;
-use App\Services\PdfMaker\PdfMerge;
-use App\Transformers\InvoiceTransformer;
-use App\Transformers\ProjectTransformer;
-use App\Transformers\QuoteTransformer;
-use App\Utils\Ninja;
-use App\Utils\Traits\GeneratesCounter;
-use App\Utils\Traits\MakesHash;
-use App\Utils\Traits\SavesDocuments;
-use Illuminate\Http\Request;
-use Illuminate\Http\Response;
-use Illuminate\Support\Facades\App;
-use Illuminate\Support\Facades\Storage;
+use App\Http\Requests\Quote\DestroyQuoteRequest;
+use App\Http\Requests\Quote\BulkActionQuoteRequest;
/**
* Class QuoteController.
@@ -517,9 +518,9 @@ class QuoteController extends BaseController
/** @var \App\Models\User $user */
$user = auth()->user();
- $action = request()->input('action');
+ $action = $request->input('action');
- $ids = request()->input('ids');
+ $ids = $request->input('ids');
if (Ninja::isHosted() && (stripos($action, 'email') !== false) && !$user->account->account_sms_verified) {
return response(['message' => 'Please verify your account to send emails.'], 400);
@@ -584,6 +585,28 @@ class QuoteController extends BaseController
return $this->listResponse(Quote::query()->withTrashed()->whereIn('id', $this->transformKeys($ids))->company());
}
+
+ if($action == 'template' && $user->can('view', $quotes->first())) {
+
+ $hash_or_response = $request->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+
+ TemplateAction::dispatch(
+ $ids,
+ $request->template_id,
+ Quote::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
+
+
+
+
/*
* Send the other actions to the switch
*/
diff --git a/app/Http/Controllers/TaskController.php b/app/Http/Controllers/TaskController.php
index a66c64424f..dd7200cf1f 100644
--- a/app/Http/Controllers/TaskController.php
+++ b/app/Http/Controllers/TaskController.php
@@ -11,29 +11,31 @@
namespace App\Http\Controllers;
-use App\Events\Task\TaskWasCreated;
-use App\Events\Task\TaskWasUpdated;
+use App\Models\Task;
+use App\Utils\Ninja;
+use App\Models\Account;
+use App\Models\TaskStatus;
use App\Factory\TaskFactory;
use App\Filters\TaskFilters;
-use App\Http\Requests\Task\CreateTaskRequest;
-use App\Http\Requests\Task\DestroyTaskRequest;
+use Illuminate\Http\Response;
+use App\Utils\Traits\MakesHash;
+use App\Utils\Traits\Uploadable;
+use App\Utils\Traits\BulkOptions;
+use App\Events\Task\TaskWasCreated;
+use App\Events\Task\TaskWasUpdated;
+use App\Repositories\TaskRepository;
+use App\Utils\Traits\SavesDocuments;
+use App\Transformers\TaskTransformer;
+use App\Services\Template\TemplateAction;
+use App\Http\Requests\Task\BulkTaskRequest;
use App\Http\Requests\Task\EditTaskRequest;
use App\Http\Requests\Task\ShowTaskRequest;
use App\Http\Requests\Task\SortTaskRequest;
use App\Http\Requests\Task\StoreTaskRequest;
+use App\Http\Requests\Task\CreateTaskRequest;
use App\Http\Requests\Task\UpdateTaskRequest;
use App\Http\Requests\Task\UploadTaskRequest;
-use App\Models\Account;
-use App\Models\Task;
-use App\Models\TaskStatus;
-use App\Repositories\TaskRepository;
-use App\Transformers\TaskTransformer;
-use App\Utils\Ninja;
-use App\Utils\Traits\BulkOptions;
-use App\Utils\Traits\MakesHash;
-use App\Utils\Traits\SavesDocuments;
-use App\Utils\Traits\Uploadable;
-use Illuminate\Http\Response;
+use App\Http\Requests\Task\DestroyTaskRequest;
/**
* Class TaskController.
@@ -497,16 +499,36 @@ class TaskController extends BaseController
* ),
* )
*/
- public function bulk()
+ public function bulk(BulkTaskRequest $request)
{
- $action = request()->input('action');
+ /** @var \App\Models\User $user */
+ $user = auth()->user();
- $ids = request()->input('ids');
- $tasks = Task::withTrashed()->find($this->transformKeys($ids));
+ $action = $request->input('action');
- $tasks->each(function ($task, $key) use ($action) {
- /** @var \App\Models\User $user */
- $user = auth()->user();
+ $ids = $request->input('ids');
+
+ $tasks = Task::withTrashed()->whereIn('id', $this->transformKeys($ids))->company()->get();
+
+ if($action == 'template' && $user->can('view', $tasks->first())) {
+
+ $hash_or_response = request()->boolean('send_email') ? 'email sent' : \Illuminate\Support\Str::uuid();
+
+ TemplateAction::dispatch(
+ $tasks->pluck('hashed_id')->toArray(),
+ $request->template_id,
+ Task::class,
+ $user->id,
+ $user->company(),
+ $user->company()->db,
+ $hash_or_response,
+ $request->boolean('send_email')
+ );
+
+ return response()->json(['message' => $hash_or_response], 200);
+ }
+
+ $tasks->each(function ($task) use ($action, $user) {
if ($user->can('edit', $task)) {
$this->task_repo->{$action}($task);
}
diff --git a/app/Http/Middleware/Locale.php b/app/Http/Middleware/Locale.php
index 5f7f2006f3..3cbf90217d 100644
--- a/app/Http/Middleware/Locale.php
+++ b/app/Http/Middleware/Locale.php
@@ -17,6 +17,48 @@ use Illuminate\Support\Facades\App;
class Locale
{
+ private array $locales = [
+ 'en',
+ 'it',
+ 'de',
+ 'fr',
+ 'pt_BR',
+ 'nl',
+ 'es',
+ 'nb_NO',
+ 'da',
+ 'ja',
+ 'sv',
+ 'es_ES',
+ 'fr_CA',
+ 'lt',
+ 'pl',
+ 'cs',
+ 'hr',
+ 'sq',
+ 'el',
+ 'en_GB',
+ 'pt_PT',
+ 'sl',
+ 'fi',
+ 'ro',
+ 'tr_TR',
+ 'th',
+ 'mk_MK',
+ 'zh_TW',
+ 'ru_RU',
+ 'ar',
+ 'fa',
+ 'lv_LV',
+ 'sr',
+ 'sk',
+ 'et',
+ 'bg',
+ 'he',
+ 'km_KH',
+ 'hu',
+ 'fr_CH',
+ ];
/**
* Handle an incoming request.
*
@@ -25,10 +67,10 @@ class Locale
* @return mixed
*/
public function handle($request, Closure $next)
- {
+ {
/*LOCALE SET */
- if ($request->has('lang') && is_string($request->input('lang'))) {
- $locale = $request->string('lang','en');
+ if ($request->has('lang') && in_array($request->input('lang','en'), $this->locales) ) {
+ $locale = $request->input('lang');
App::setLocale($locale);
} elseif (auth()->guard('contact')->user()) {
App::setLocale(auth()->guard('contact')->user()->client()->setEagerLoads([])->first()->locale());
diff --git a/app/Http/Middleware/VendorLocale.php b/app/Http/Middleware/VendorLocale.php
index 17ae99c62e..6da86375ad 100644
--- a/app/Http/Middleware/VendorLocale.php
+++ b/app/Http/Middleware/VendorLocale.php
@@ -17,6 +17,48 @@ use Illuminate\Support\Facades\App;
class VendorLocale
{
+ private array $locales = [
+ 'en',
+ 'it',
+ 'de',
+ 'fr',
+ 'pt_BR',
+ 'nl',
+ 'es',
+ 'nb_NO',
+ 'da',
+ 'ja',
+ 'sv',
+ 'es_ES',
+ 'fr_CA',
+ 'lt',
+ 'pl',
+ 'cs',
+ 'hr',
+ 'sq',
+ 'el',
+ 'en_GB',
+ 'pt_PT',
+ 'sl',
+ 'fi',
+ 'ro',
+ 'tr_TR',
+ 'th',
+ 'mk_MK',
+ 'zh_TW',
+ 'ru_RU',
+ 'ar',
+ 'fa',
+ 'lv_LV',
+ 'sr',
+ 'sk',
+ 'et',
+ 'bg',
+ 'he',
+ 'km_KH',
+ 'hu',
+ 'fr_CH',
+ ];
/**
* Handle an incoming request.
*
@@ -32,7 +74,7 @@ class VendorLocale
}
/*LOCALE SET */
- if ($request->has('lang') && is_string($request->input('lang'))) {
+ if ($request->has('lang') && in_array($request->input('lang','en'), $this->locales) ) {
$locale = $request->input('lang');
App::setLocale($locale);
} elseif (auth()->guard('vendor')->user()) {
diff --git a/app/Http/Requests/Account/CreateAccountRequest.php b/app/Http/Requests/Account/CreateAccountRequest.php
index 666db21ef8..8ed82dec0e 100644
--- a/app/Http/Requests/Account/CreateAccountRequest.php
+++ b/app/Http/Requests/Account/CreateAccountRequest.php
@@ -45,7 +45,7 @@ class CreateAccountRequest extends Request
return [
'first_name' => 'string|max:100',
'last_name' => 'string:max:100',
- 'password' => 'required|string|min:6|max:1000',
+ 'password' => 'required|string|min:6|max:100',
'email' => $email_rules,
'privacy_policy' => 'required|boolean',
'terms_of_service' => 'required|boolean',
diff --git a/app/Http/Requests/Client/BulkClientRequest.php b/app/Http/Requests/Client/BulkClientRequest.php
index c18ac8fa3d..bbe68db5e0 100644
--- a/app/Http/Requests/Client/BulkClientRequest.php
+++ b/app/Http/Requests/Client/BulkClientRequest.php
@@ -35,9 +35,13 @@ class BulkClientRequest extends Request
$user = auth()->user();
return [
+ 'action' => 'required|string|in:archive,restore,delete,template',
'ids' => ['required','bail','array',Rule::exists('clients', 'id')->where('company_id', $user->company()->id)],
- 'action' => 'in:archive,restore,delete'
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
];
+
}
public function prepareForValidation()
diff --git a/app/Http/Requests/Credit/BulkCreditRequest.php b/app/Http/Requests/Credit/BulkCreditRequest.php
index fd04b42163..a1e0c89192 100644
--- a/app/Http/Requests/Credit/BulkCreditRequest.php
+++ b/app/Http/Requests/Credit/BulkCreditRequest.php
@@ -35,9 +35,15 @@ class BulkCreditRequest extends FormRequest
*/
public function rules()
{
+ /** @var \App\Models\User $user */
+ $user = auth()->user();
+
return [
- 'ids' => ['required','bail','array',Rule::exists('credits', 'id')->where('company_id', auth()->user()->company()->id)],
- 'action' => 'required|bail|in:archive,restore,delete,email,bulk_download,bulk_print,mark_paid,clone_to_credit,history,mark_sent,download,send_email'
+ 'ids' => ['required','bail','array',Rule::exists('credits', 'id')->where('company_id', $user->company()->id)],
+ 'action' => 'required|bail|in:archive,restore,delete,email,bulk_download,bulk_print,mark_paid,clone_to_credit,history,mark_sent,download,send_email,template',
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
];
}
diff --git a/app/Http/Requests/Email/SendEmailRequest.php b/app/Http/Requests/Email/SendEmailRequest.php
index a2b65364a1..93b25a9ad5 100644
--- a/app/Http/Requests/Email/SendEmailRequest.php
+++ b/app/Http/Requests/Email/SendEmailRequest.php
@@ -43,8 +43,10 @@ class SendEmailRequest extends Request
'template' => 'bail|required',
'entity' => 'bail|required',
'entity_id' => 'bail|required',
- 'cc_email' => 'bail|sometimes|email|nullable',
+ 'cc_email.*' => 'bail|sometimes|email|nullable',
];
+
+
}
public function prepareForValidation()
@@ -72,6 +74,14 @@ class SendEmailRequest extends Request
$input['entity'] = "App\Models\\".ucfirst(Str::camel($input['entity']));
}
+ if(isset($input['cc_email'])){
+ $input['cc_email'] = collect(explode(",", $input['cc_email']))->map(function($email){
+ return trim($email);
+ })->filter(function($email){
+ return filter_var($email, FILTER_VALIDATE_EMAIL);
+ })->slice(0,4)->toArray();
+ }
+
$this->replace($input);
}
diff --git a/app/Http/Requests/Import/ImportRequest.php b/app/Http/Requests/Import/ImportRequest.php
index e09e8d2229..73ee49b251 100644
--- a/app/Http/Requests/Import/ImportRequest.php
+++ b/app/Http/Requests/Import/ImportRequest.php
@@ -22,7 +22,10 @@ class ImportRequest extends Request
*/
public function authorize() : bool
{
- return auth()->user()->isAdmin();
+ /** @var \App\Models\User $user */
+ $user = auth()->user();
+
+ return $user->isAdmin();
}
public function rules()
diff --git a/app/Http/Requests/Payment/BulkActionPaymentRequest.php b/app/Http/Requests/Payment/BulkActionPaymentRequest.php
new file mode 100644
index 0000000000..393010c1b6
--- /dev/null
+++ b/app/Http/Requests/Payment/BulkActionPaymentRequest.php
@@ -0,0 +1,40 @@
+ 'required|string',
+ 'ids' => 'required|array',
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
+ ];
+
+ }
+}
diff --git a/app/Http/Requests/Project/BulkProjectRequest.php b/app/Http/Requests/Project/BulkProjectRequest.php
new file mode 100644
index 0000000000..63d677f588
--- /dev/null
+++ b/app/Http/Requests/Project/BulkProjectRequest.php
@@ -0,0 +1,45 @@
+ 'required|string',
+ 'ids' => 'required|array',
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
+ ];
+
+ }
+}
diff --git a/app/Http/Requests/PurchaseOrder/BulkPurchaseOrderRequest.php b/app/Http/Requests/PurchaseOrder/BulkPurchaseOrderRequest.php
index 28a581ffd3..15a8779013 100644
--- a/app/Http/Requests/PurchaseOrder/BulkPurchaseOrderRequest.php
+++ b/app/Http/Requests/PurchaseOrder/BulkPurchaseOrderRequest.php
@@ -30,7 +30,10 @@ class BulkPurchaseOrderRequest extends Request
{
return [
'ids' => 'required|bail|array|min:1',
- 'action' => 'in:archive,restore,delete,email,bulk_download,bulk_print,mark_sent,download,send_email,add_to_inventory,expense,cancel'
+ 'action' => 'in:template,archive,restore,delete,email,bulk_download,bulk_print,mark_sent,download,send_email,add_to_inventory,expense,cancel',
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
];
}
}
diff --git a/app/Http/Requests/Quote/BulkActionQuoteRequest.php b/app/Http/Requests/Quote/BulkActionQuoteRequest.php
index cb77becc06..808322c3e4 100644
--- a/app/Http/Requests/Quote/BulkActionQuoteRequest.php
+++ b/app/Http/Requests/Quote/BulkActionQuoteRequest.php
@@ -31,7 +31,11 @@ class BulkActionQuoteRequest extends Request
$input = $this->all();
$rules = [
- 'action' => 'sometimes|in:convert_to_invoice,convert_to_project,email,bulk_download,bulk_print,clone_to_invoice,approve,download,restore,archive,delete,send_email,mark_sent',
+ 'action' => 'sometimes|in:template,convert_to_invoice,convert_to_project,email,bulk_download,bulk_print,clone_to_invoice,approve,download,restore,archive,delete,send_email,mark_sent',
+ 'ids' => 'required|array',
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
];
if (in_array($input['action'], ['convert,convert_to_invoice'])) {
diff --git a/app/Http/Requests/Task/BulkTaskRequest.php b/app/Http/Requests/Task/BulkTaskRequest.php
index bba4fe941d..6f58db8d30 100644
--- a/app/Http/Requests/Task/BulkTaskRequest.php
+++ b/app/Http/Requests/Task/BulkTaskRequest.php
@@ -12,12 +12,9 @@
namespace App\Http\Requests\Task;
use App\Http\Requests\Request;
-use App\Models\Task;
-use App\Utils\Traits\BulkOptions;
class BulkTaskRequest extends Request
{
- use BulkOptions;
/**
* Determine if the user is authorized to make this request.
@@ -26,7 +23,7 @@ class BulkTaskRequest extends Request
*/
public function authorize()
{
- return auth()->user()->can(auth()->user()->isAdmin(), Task::class);
+ return true;
}
/**
@@ -36,13 +33,14 @@ class BulkTaskRequest extends Request
*/
public function rules()
{
- $rules = $this->getGlobalRules();
+
+ return [
+ 'action' => 'required|string',
+ 'ids' => 'required|array',
+ 'template' => 'sometimes|string',
+ 'template_id' => 'sometimes|string',
+ 'send_email' => 'sometimes|bool'
+ ];
- /* We don't require IDs on bulk storing. */
- if ($this->action !== self::$STORE_METHOD) {
- $rules['ids'] = ['required'];
- }
-
- return $rules;
}
}
diff --git a/app/Import/Definitions/TaskMap.php b/app/Import/Definitions/TaskMap.php
index d974fa51ae..00221bc6b2 100644
--- a/app/Import/Definitions/TaskMap.php
+++ b/app/Import/Definitions/TaskMap.php
@@ -24,7 +24,7 @@ class TaskMap
4 => 'client.name',
5 => 'client.email',
6 => 'task.description',
- 7 => 'task.is_billable',
+ 7 => 'task.billable',
8 => 'task.start_date',
9 => 'task.end_date',
10 => 'task.start_time',
diff --git a/app/Import/Providers/BaseImport.php b/app/Import/Providers/BaseImport.php
index 0ad36b2047..ed84c71f06 100644
--- a/app/Import/Providers/BaseImport.php
+++ b/app/Import/Providers/BaseImport.php
@@ -162,11 +162,12 @@ class BaseImport
private function groupTasks($csvData, $key)
{
+ nlog($csvData[0]);
- if (! $key || count(array_column($csvData, $key)) == 0) {
+ if (! $key || !is_array($csvData) || count($csvData) == 0 || !isset($csvData[0]['task.number']) || empty($csvData[0]['task.number'])) {
return $csvData;
}
-
+
// Group by tasks.
$grouped = [];
@@ -495,7 +496,7 @@ class BaseImport
];
}
}
-nlog($count);
+
return $count;
}
diff --git a/app/Import/Transformer/BaseTransformer.php b/app/Import/Transformer/BaseTransformer.php
index c1f1d43cbd..843330ac87 100644
--- a/app/Import/Transformer/BaseTransformer.php
+++ b/app/Import/Transformer/BaseTransformer.php
@@ -77,7 +77,7 @@ class BaseTransformer
}
public function getString($data, $field)
- {
+ {
return isset($data[$field]) && $data[$field] ? trim($data[$field]) : '';
}
@@ -179,6 +179,7 @@ class BaseTransformer
public function getClient($client_name, $client_email)
{
+
if (! empty($client_name)) {
$client_id_search = Client::query()->where('company_id', $this->company->id)
->where('is_deleted', false)
diff --git a/app/Import/Transformer/Csv/TaskTransformer.php b/app/Import/Transformer/Csv/TaskTransformer.php
index 9f817ab04a..9ebf8c6d44 100644
--- a/app/Import/Transformer/Csv/TaskTransformer.php
+++ b/app/Import/Transformer/Csv/TaskTransformer.php
@@ -29,8 +29,11 @@ class TaskTransformer extends BaseTransformer
{
$this->stubbed_timestamp = time();
- $task_data = reset($task_items_data);
-
+ if(count($task_items_data) == count($task_items_data, COUNT_RECURSIVE))
+ $task_data = $task_items_data;
+ else
+ $task_data = reset($task_items_data);
+
$clientId = $this->getClient(
$this->getString($task_data, 'client.name'),
$this->getString($task_data, 'client.email')
diff --git a/app/Jobs/Company/CompanyExport.php b/app/Jobs/Company/CompanyExport.php
index 6805c05a55..30b9a8c952 100644
--- a/app/Jobs/Company/CompanyExport.php
+++ b/app/Jobs/Company/CompanyExport.php
@@ -492,7 +492,7 @@ class CompanyExport implements ShouldQueue
$nmo->company = $company_reference;
$nmo->settings = $this->company->settings;
- NinjaMailerJob::dispatch($nmo, true);
+ (new NinjaMailerJob($nmo, true))->handle();
UnlinkFile::dispatch(config('filesystems.default'), $storage_path)->delay(now()->addHours(1));
diff --git a/app/Jobs/Import/CSVIngest.php b/app/Jobs/Import/CSVIngest.php
index 64933f7507..ee43e5a1ce 100644
--- a/app/Jobs/Import/CSVIngest.php
+++ b/app/Jobs/Import/CSVIngest.php
@@ -74,7 +74,7 @@ class CSVIngest implements ShouldQueue
$engine = $this->bootEngine();
- foreach (['client', 'product', 'invoice', 'payment', 'vendor', 'expense', 'quote', 'bank_transaction', 'recurring_invoice'] as $entity) {
+ foreach (['client', 'product', 'invoice', 'payment', 'vendor', 'expense', 'quote', 'bank_transaction', 'recurring_invoice', 'task'] as $entity) {
$engine->import($entity);
}
diff --git a/app/Jobs/Mail/NinjaMailerJob.php b/app/Jobs/Mail/NinjaMailerJob.php
index 4ecc5bc456..3b8211f4ba 100644
--- a/app/Jobs/Mail/NinjaMailerJob.php
+++ b/app/Jobs/Mail/NinjaMailerJob.php
@@ -24,6 +24,7 @@ use App\Models\Invoice;
use App\Models\Payment;
use App\Models\SystemLog;
use App\Models\User;
+use App\Repositories\ActivityRepository;
use App\Utils\Ninja;
use App\Utils\Traits\MakesHash;
use GuzzleHttp\Exception\ClientException;
@@ -164,7 +165,7 @@ class NinjaMailerJob implements ShouldQueue
* this merges a text string with a json object
* need to harvest the ->Message property using the following
*/
- if (stripos($e->getMessage(), 'code 406') || stripos($e->getMessage(), 'code 300') || stripos($e->getMessage(), 'code 413')) {
+ if (stripos($e->getMessage(), 'code 300') || stripos($e->getMessage(), 'code 413')) {
$message = "Either Attachment too large, or recipient has been suppressed.";
$this->fail();
@@ -174,6 +175,20 @@ class NinjaMailerJob implements ShouldQueue
return;
}
+ if (stripos($e->getMessage(), 'code 406')) {
+
+ $email = $this->nmo->to_user->email ?? '';
+
+ $message = "Recipient {$email} has been suppressed and cannot receive emails from you.";
+
+ $this->fail();
+ $this->logMailError($message, $this->company->clients()->first());
+ $this->cleanUpMailers();
+
+ return;
+ }
+
+
//only report once, not on all tries
if ($this->attempts() == $this->tries) {
/* If the is an entity attached to the message send a failure mailer */
diff --git a/app/Jobs/Payment/EmailPayment.php b/app/Jobs/Payment/EmailPayment.php
index 127c6e857e..31e83bc9ef 100644
--- a/app/Jobs/Payment/EmailPayment.php
+++ b/app/Jobs/Payment/EmailPayment.php
@@ -74,6 +74,7 @@ class EmailPayment implements ShouldQueue
if($this->settings->payment_email_all_contacts && $this->payment->invoices && $this->payment->invoices->count() >= 1) {
$this->emailAllContacts($email_builder);
+ return;
}
$invitation = null;
diff --git a/app/Jobs/Payment/EmailRefundPayment.php b/app/Jobs/Payment/EmailRefundPayment.php
index 1ec374ab1b..f59d1e87c8 100644
--- a/app/Jobs/Payment/EmailRefundPayment.php
+++ b/app/Jobs/Payment/EmailRefundPayment.php
@@ -96,8 +96,6 @@ class EmailRefundPayment implements ShouldQueue
}
}
-
-
$nmo->mailable = new TemplateEmail($email_builder, $this->contact, $invitation);
$nmo->to_user = $this->contact;
$nmo->settings = $this->settings;
diff --git a/app/Jobs/PostMark/ProcessPostmarkWebhook.php b/app/Jobs/PostMark/ProcessPostmarkWebhook.php
index e2eae3bb8a..b66c271449 100644
--- a/app/Jobs/PostMark/ProcessPostmarkWebhook.php
+++ b/app/Jobs/PostMark/ProcessPostmarkWebhook.php
@@ -388,7 +388,7 @@ class ProcessPostmarkWebhook implements ShouldQueue
'delivery_message' => $event->Details->DeliveryMessage ?? $event->Details->Summary ?? '',
'server' => $event->Details->DestinationServer ?? '',
'server_ip' => $event->Details->DestinationIP ?? '',
- 'date' => \Carbon\Carbon::parse($event->ReceivedAt)->format('Y-m-d H:m:s') ?? '',
+ 'date' => \Carbon\Carbon::parse($event->ReceivedAt)->format('Y-m-d H:i:s') ?? '',
];
})->toArray();
diff --git a/app/Libraries/OAuth/Providers/Google.php b/app/Libraries/OAuth/Providers/Google.php
index 3ec7c9d931..ce55554c98 100644
--- a/app/Libraries/OAuth/Providers/Google.php
+++ b/app/Libraries/OAuth/Providers/Google.php
@@ -3,7 +3,6 @@
namespace App\Libraries\OAuth\Providers;
use Google_Client;
-
class Google implements ProviderInterface
{
public function getTokenResponse($token)
@@ -27,4 +26,28 @@ class Google implements ProviderInterface
{
return $payload['name'];
}
+
+ public function harvestUser($access_token)
+ {
+ $client = new Google_Client();
+ $client->setClientId(config('ninja.auth.google.client_id'));
+ $client->setClientSecret(config('ninja.auth.google.client_secret'));
+ $client->setAccessToken($access_token);
+
+ $oauth2 = new \Google_Service_Oauth2($client);
+
+ try {
+ $userInfo = $oauth2->userinfo->get();
+ }
+ catch (\Exception $e) {
+ return false;
+ }
+
+ return [
+ 'email' => $userInfo['email'],
+ 'sub' => $userInfo['id'],
+ 'name' => $userInfo['name'],
+ ];
+
+ }
}
diff --git a/app/Models/Presenters/ClientPresenter.php b/app/Models/Presenters/ClientPresenter.php
index aed92c0eb8..e9ada6d652 100644
--- a/app/Models/Presenters/ClientPresenter.php
+++ b/app/Models/Presenters/ClientPresenter.php
@@ -103,7 +103,7 @@ class ClientPresenter extends EntityPresenter
if ($cityState = $this->getShippingCityState()) {
$str .= e($cityState).'
';
}
- if ($country = $client->shipping_country) {
+ if ($country = $client->shipping_country ?? $client->country) {
$str .= e($country->name).'
';
}
diff --git a/app/Models/Task.php b/app/Models/Task.php
index 372c59d623..332c8a67f5 100644
--- a/app/Models/Task.php
+++ b/app/Models/Task.php
@@ -261,10 +261,10 @@ class Task extends BaseModel
$parent_entity = $this->client ?? $this->company;
if($log[0])
- $log[0] = Carbon::createFromTimestamp($log[0])->format($parent_entity->date_format().' H:m:s');
+ $log[0] = Carbon::createFromTimestamp($log[0])->format($parent_entity->date_format().' H:i:s');
if($log[1] && $log[1] != 0)
- $log[1] = Carbon::createFromTimestamp($log[1])->format($parent_entity->date_format().' H:m:s');
+ $log[1] = Carbon::createFromTimestamp($log[1])->format($parent_entity->date_format().' H:i:s');
else
$log[1] = ctrans('texts.running');
@@ -291,17 +291,21 @@ class Task extends BaseModel
if($log[0])
$logged['start_date_raw'] = $log[0];
- $logged['start_date'] = Carbon::createFromTimestamp($log[0])->format($parent_entity->date_format().' H:m:s');
+ $logged['start_date'] = Carbon::createFromTimestamp($log[0])->setTimeZone($this->company->timezone()->name)->format($parent_entity->date_format().' H:i:s');
if($log[1] && $log[1] != 0) {
$logged['end_date_raw'] = $log[1];
- $logged['end_date'] = Carbon::createFromTimestamp($log[1])->format($parent_entity->date_format().' H:m:s');
+ $logged['end_date'] = Carbon::createFromTimestamp($log[1])->setTimeZone($this->company->timezone()->name)->format($parent_entity->date_format().' H:i:s');
}
else{
$logged['end_date_raw'] = 0;
$logged['end_date'] = ctrans('texts.running');
}
- $logged['duration'] = $duration;
+
+ $logged['description'] = $log[2];
+ $logged['billable'] = $log[3];
+ $logged['duration_raw'] = $duration;
+ $logged['duration'] = gmdate("H:i:s", $duration);
return $logged;
diff --git a/app/PaymentDrivers/BaseDriver.php b/app/PaymentDrivers/BaseDriver.php
index a133d650b0..d0f7456450 100644
--- a/app/PaymentDrivers/BaseDriver.php
+++ b/app/PaymentDrivers/BaseDriver.php
@@ -743,29 +743,20 @@ class BaseDriver extends AbstractPaymentDriver
}
$invoices_string = str_replace(["*","<",">","'",'"'], "-", $invoices_string);
- // $invoices_string = "I-".$invoices_string;
- // $invoices_string = substr($invoices_string, 0, 22);
// 2023-11-02 - improve the statement descriptor for string
+
$company_name = $this->client->company->present()->name();
+$company_name = str_replace(["*","<",">","'",'"'], "-", $company_name);
-if(ctype_digit(substr($company_name, 0, 1)))
- $company_name = "X" . $company_name;
-
-$suffix = strlen($invoices_string) + 1;
-
-$length = 22 - $suffix;
-
-$company_name = substr($company_name, 0, $length);
+if(ctype_digit(substr($company_name, 0, 1))) {
+ $company_name = "I" . $company_name;
+}
+$company_name = substr($company_name, 0, 11);
$descriptor = "{$company_name} {$invoices_string}";
-
-$invoices_string = str_pad($descriptor, 5, ctrans('texts.invoice'), STR_PAD_RIGHT);
-$invoices_string = substr($invoices_string, 0, 22);
-
- // $invoices_string = str_pad($invoices_string, 5, ctrans('texts.invoice'), STR_PAD_LEFT);
-
- return $invoices_string;
+$descriptor = substr($descriptor, 0, 22);
+return $descriptor;
}
/**
diff --git a/app/Repositories/ClientContactRepository.php b/app/Repositories/ClientContactRepository.php
index ed1b81be26..49aab14759 100644
--- a/app/Repositories/ClientContactRepository.php
+++ b/app/Repositories/ClientContactRepository.php
@@ -28,7 +28,7 @@ class ClientContactRepository extends BaseRepository
public function save(array $data, Client $client) : void
{
- //06-09-2022 sometimes users pass a contact object instead of a nested array, this sequence handles this scenario
+
if (isset($data['contacts']) && (count($data['contacts']) !== count($data['contacts'], COUNT_RECURSIVE))) {
$contacts = collect($data['contacts']);
} elseif (isset($data['contacts'])) {
diff --git a/app/Repositories/VendorContactRepository.php b/app/Repositories/VendorContactRepository.php
index b2b1647fcf..c4ef35da7d 100644
--- a/app/Repositories/VendorContactRepository.php
+++ b/app/Repositories/VendorContactRepository.php
@@ -25,8 +25,12 @@ class VendorContactRepository extends BaseRepository
public function save(array $data, Vendor $vendor) : void
{
- if (isset($data['contacts'])) {
+
+ if (isset($data['contacts']) && (count($data['contacts']) !== count($data['contacts'], COUNT_RECURSIVE))) {
$contacts = collect($data['contacts']);
+ } elseif (isset($data['contacts'])) {
+ $temp_array[] = $data['contacts'];
+ $contacts = collect($temp_array);
} else {
$contacts = collect();
}
@@ -80,10 +84,10 @@ class VendorContactRepository extends BaseRepository
});
- $vendor->load('contacts');
+ $vendor->fresh();
//always made sure we have one blank contact to maintain state
- if ($vendor->contacts->count() == 0) {
+ if ($vendor->contacts()->count() == 0) {
$new_contact = new VendorContact;
$new_contact->vendor_id = $vendor->id;
$new_contact->company_id = $vendor->company_id;
diff --git a/app/Repositories/VendorRepository.php b/app/Repositories/VendorRepository.php
index f1eeb0e259..51a2a5d960 100644
--- a/app/Repositories/VendorRepository.php
+++ b/app/Repositories/VendorRepository.php
@@ -55,19 +55,15 @@ class VendorRepository extends BaseRepository
if ($vendor->number == '' || ! $vendor->number) {
$vendor->number = $this->getNextVendorNumber($vendor);
- } //todo write tests for this and make sure that custom vendor numbers also works as expected from here
+ }
$vendor->saveQuietly();
- if (isset($data['contacts'])) {
+ if (isset($data['contacts']) || $vendor->contacts()->count() == 0) {
$this->contact_repo->save($data, $vendor);
}
- if (empty($data['name'])) {
- $data['name'] = $vendor->present()->name();
- }
-
- if (array_key_exists('documents', $data)) {
+ if (array_key_exists('documents', $data) && count($data['documents']) >= 1) {
$this->saveDocuments($data['documents'], $vendor);
}
diff --git a/app/Services/ClientPortal/InstantPayment.php b/app/Services/ClientPortal/InstantPayment.php
index d9a75bec4a..093d47b19e 100644
--- a/app/Services/ClientPortal/InstantPayment.php
+++ b/app/Services/ClientPortal/InstantPayment.php
@@ -83,6 +83,8 @@ class InstantPayment
->with(['message' => 'No payable invoices selected.']);
}
+ $invoices = Invoice::query()->whereIn('id', $this->transformKeys($payable_invoices->pluck('invoice_id')->toArray()))->withTrashed()->get();
+
$client = $invoices->first()->client;
$settings = $client->getMergedSettings();
diff --git a/app/Services/Email/Email.php b/app/Services/Email/Email.php
index 4427a16759..7bcc488f50 100644
--- a/app/Services/Email/Email.php
+++ b/app/Services/Email/Email.php
@@ -272,11 +272,27 @@ class Email implements ShouldQueue
nlog("Mailer failed with {$e->getMessage()}");
$message = $e->getMessage();
- if (stripos($e->getMessage(), 'code 406') || stripos($e->getMessage(), 'code 300') || stripos($e->getMessage(), 'code 413')) {
- $message = "Either Attachment too large, or recipient has been suppressed.";
+
+ if (stripos($e->getMessage(), 'code 300') || stripos($e->getMessage(), 'code 413')) {
+ $message = "Either Attachment too large, or recipient has been suppressed.";
+
+ $this->fail();
+ $this->logMailError($e->getMessage(), $this->company->clients()->first());
+ $this->cleanUpMailers();
+
+ return;
+ }
+
+ if (stripos($e->getMessage(), 'code 406')) {
+
+ $address_object = reset($this->email_object->to);
+
+ $email = $address_object->address ?? '';
+
+ $message = "Recipient {$email} has been suppressed and cannot receive emails from you.";
$this->fail();
- $this->logMailError($e->getMessage(), $this->company->clients()->first());
+ $this->logMailError($message, $this->company->clients()->first());
$this->cleanUpMailers();
return;
diff --git a/app/Services/Invoice/MarkPaid.php b/app/Services/Invoice/MarkPaid.php
index 3ecd0acb1d..8a496bd4b7 100644
--- a/app/Services/Invoice/MarkPaid.php
+++ b/app/Services/Invoice/MarkPaid.php
@@ -90,7 +90,7 @@ class MarkPaid extends AbstractService
'amount' => $this->payable_balance,
]);
- if ($payment->company->getSetting('send_email_on_mark_paid')) {
+ if ($payment->client->getSetting('send_email_on_mark_paid')) {
$payment->service()->sendEmail();
}
diff --git a/app/Services/Template/TemplateAction.php b/app/Services/Template/TemplateAction.php
index f717aa1724..e54ee19988 100644
--- a/app/Services/Template/TemplateAction.php
+++ b/app/Services/Template/TemplateAction.php
@@ -96,6 +96,7 @@ class TemplateAction implements ShouldQueue
Project::class => $resource->with('client'),
Expense::class => $resource->with('client'),
Payment::class => $resource->with('invoices', 'client'),
+ Client::class => $resource,
};
$result = $resource->withTrashed()
@@ -103,13 +104,14 @@ class TemplateAction implements ShouldQueue
->where('company_id', $this->company->id)
->get();
+ // nlog($result->toArray());
+
if($result->count() <= 1) {
$data[$key] = collect($result);
} else {
$data[$key] = $result;
}
-
$ts = $template_service
->setCompany($this->company)
->build($data);
diff --git a/app/Services/Template/TemplateMock.php b/app/Services/Template/TemplateMock.php
index 61f00c09ce..fd386cdd5f 100644
--- a/app/Services/Template/TemplateMock.php
+++ b/app/Services/Template/TemplateMock.php
@@ -28,9 +28,9 @@ class TemplateMock
public string $purchase_order_data = '[{"id":"l4zbq2dprO","user_id":"wMvbmOeYAl","project_id":"","assigned_user_id":"","vendor_id":"xYRdG7dDzO","amount":14,"balance":0,"client_id":"","status_id":"1","design_id":"Wpmbk5ezJn","created_at":1695799265,"updated_at":1695799268,"archived_at":0,"is_deleted":false,"number":"0001","discount":0,"po_number":"","date":"2023-09-27","last_sent_date":"","next_send_date":"","reminder1_sent":"","reminder2_sent":"","reminder3_sent":"","reminder_last_sent":"","due_date":"2023-09-28","terms":"","public_notes":"","private_notes":"","uses_inclusive_taxes":false,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"total_taxes":0,"is_amount_discount":true,"footer":"","partial":0,"partial_due_date":"","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","has_tasks":false,"has_expenses":false,"custom_surcharge1":0,"custom_surcharge2":0,"custom_surcharge3":0,"custom_surcharge4":0,"custom_surcharge_tax1":false,"custom_surcharge_tax2":false,"custom_surcharge_tax3":false,"custom_surcharge_tax4":false,"line_items":[{"_id":"16ae59d4-60a8-4edf-b3a3-58882df1c5bf","quantity":1,"cost":14,"product_key":"enterprise_plan","product_cost":0,"notes":"The Enterprise Plan","discount":0,"is_amount_discount":true,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":"0","line_total":14,"gross_line_total":14,"date":"","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"73","custom_value3":"Nesciunt sequi.","custom_value4":"Ratione inventore.","type_id":"1","tax_id":"1","tax_amount":0,"task_id":"","expense_id":""},{"_id":"c7ef7af8-2713-4376-89c5-6f2c9c148ea7","quantity":0,"cost":0,"product_key":"","product_cost":0,"notes":"","discount":0,"is_amount_discount":true,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":"0","line_total":0,"gross_line_total":0,"date":"","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","type_id":"1","tax_id":"1","tax_amount":0,"task_id":"","expense_id":""}],"entity_type":"purchaseOrder","exchange_rate":1,"paid_to_date":0,"subscription_id":"","expense_id":"","currency_id":"","vendor":{"id":"xYRdG7dDzO","user_id":"wMvbmOeYAl","assigned_user_id":"","name":"Dr. Ottilie Gorczany PhD","website":"http:\/\/www.kihn.biz\/","private_notes":"Ullam ullam aut sed accusantium. Et amet ut et cumque. Dolorem rem doloremque eius aut laudantium soluta nihil.","public_notes":"","last_login":0,"address1":"93105","address2":"797 Medhurst Radial Suite 030","phone":"","city":"Lamberttown","state":"Kentucky","postal_code":"86694-1500","country_id":"4","currency_id":"1","custom_value1":"Et similique.","custom_value2":"Ducimus est.","custom_value3":"Ut unde aut quia.","custom_value4":"Rerum odio maxime.","is_deleted":false,"vat_number":"Hic sed vel sint eos et.","id_number":"Quod aut autem.","updated_at":1695796653,"archived_at":0,"created_at":1695796652,"number":"0004","language_id":"","contacts":{"App\\Models\\VendorContact":[{"id":"VolejRRejN","first_name":"Aisha","last_name":"Jerde","send_email":true,"email":"mariam40@example.com","created_at":1695796652,"updated_at":1695796652,"archived_at":0,"is_primary":true,"phone":"+1-828-839-4171","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","link":"http:\/\/ninja.test:8000\/vendor\/key_login\/vqQKXcwO2WsvkN4MPOAS6fpirMZP7gfc","last_login":0},{"id":"WpmbkR5azJ","first_name":"Willy","last_name":"Jacobs","send_email":true,"email":"qwolff@example.org","created_at":1695796652,"updated_at":1695796652,"archived_at":0,"is_primary":false,"phone":"979.822.6527","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","link":"http:\/\/ninja.test:8000\/vendor\/key_login\/A8g2xp3OLbNzpWlfPGIML2lk1LYNFJpx","last_login":0}]},"documents":{"App\\Models\\Document":[]}}},{"id":"kzPdy7aQro","user_id":"wMvbmOeYAl","project_id":"","assigned_user_id":"","vendor_id":"xYRdG7dDzO","amount":24,"balance":24,"client_id":"","status_id":"2","design_id":"Wpmbk5ezJn","created_at":1695799278,"updated_at":1695799290,"archived_at":0,"is_deleted":false,"number":"0002","discount":0,"po_number":"","date":"2023-09-27","last_sent_date":"","next_send_date":"","reminder1_sent":"","reminder2_sent":"","reminder3_sent":"","reminder_last_sent":"","due_date":"2023-09-28","terms":"","public_notes":"","private_notes":"","uses_inclusive_taxes":false,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"total_taxes":0,"is_amount_discount":true,"footer":"","partial":0,"partial_due_date":"","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","has_tasks":false,"has_expenses":false,"custom_surcharge1":0,"custom_surcharge2":0,"custom_surcharge3":0,"custom_surcharge4":0,"custom_surcharge_tax1":false,"custom_surcharge_tax2":false,"custom_surcharge_tax3":false,"custom_surcharge_tax4":false,"line_items":[{"_id":"a9fa64d0-e11b-47ce-8d75-d126769cd17d","quantity":1,"cost":14,"product_key":"enterprise_plan","product_cost":0,"notes":"The Enterprise Plan","discount":0,"is_amount_discount":true,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":"0","line_total":14,"gross_line_total":14,"date":"","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"73","custom_value3":"Nesciunt sequi.","custom_value4":"Ratione inventore.","type_id":"1","tax_id":"1","tax_amount":0,"task_id":"","expense_id":""},{"_id":"6b8a7e41-f140-499a-ac3d-7f1916aa7e00","quantity":1,"cost":10,"product_key":"pro_plan","product_cost":0,"notes":"The Pro Plan","discount":0,"is_amount_discount":true,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":"0","line_total":10,"gross_line_total":10,"date":"","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"81","custom_value3":"Enim quis deleniti.","custom_value4":"Numquam quia quas.","type_id":"1","tax_id":"1","tax_amount":0,"task_id":"","expense_id":""}],"entity_type":"purchaseOrder","exchange_rate":1,"paid_to_date":0,"subscription_id":"","expense_id":"","currency_id":"","vendor":{"id":"xYRdG7dDzO","user_id":"wMvbmOeYAl","assigned_user_id":"","name":"Dr. Ottilie Gorczany PhD","website":"http:\/\/www.kihn.biz\/","private_notes":"Ullam ullam aut sed accusantium. Et amet ut et cumque. Dolorem rem doloremque eius aut laudantium soluta nihil.","public_notes":"","last_login":0,"address1":"93105","address2":"797 Medhurst Radial Suite 030","phone":"","city":"Lamberttown","state":"Kentucky","postal_code":"86694-1500","country_id":"4","currency_id":"1","custom_value1":"Et similique.","custom_value2":"Ducimus est.","custom_value3":"Ut unde aut quia.","custom_value4":"Rerum odio maxime.","is_deleted":false,"vat_number":"Hic sed vel sint eos et.","id_number":"Quod aut autem.","updated_at":1695796653,"archived_at":0,"created_at":1695796652,"number":"0004","language_id":"","contacts":{"App\\Models\\VendorContact":[{"id":"VolejRRejN","first_name":"Aisha","last_name":"Jerde","send_email":true,"email":"mariam40@example.com","created_at":1695796652,"updated_at":1695796652,"archived_at":0,"is_primary":true,"phone":"+1-828-839-4171","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","link":"http:\/\/ninja.test:8000\/vendor\/key_login\/vqQKXcwO2WsvkN4MPOAS6fpirMZP7gfc","last_login":0},{"id":"WpmbkR5azJ","first_name":"Willy","last_name":"Jacobs","send_email":true,"email":"qwolff@example.org","created_at":1695796652,"updated_at":1695796652,"archived_at":0,"is_primary":false,"phone":"979.822.6527","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","link":"http:\/\/ninja.test:8000\/vendor\/key_login\/A8g2xp3OLbNzpWlfPGIML2lk1LYNFJpx","last_login":0}]},"documents":{"App\\Models\\Document":[]}}}]';
- public string $project_data = '[{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"client":{"id":"QJ0dN6dLOv","user_id":"wMvbmOeYAl","assigned_user_id":"","name":"Paucek and Sons","website":"http:\/\/www.wiegand.com\/sit-repellendus-enim-porro-aut-voluptas-voluptates.html","private_notes":"In nihil non voluptas voluptatibus molestiae et. Nihil labore eligendi omnis id. Et cumque reiciendis blanditiis fugiat.","balance":19958.86,"group_settings_id":"","paid_to_date":18895.75,"payment_balance":0,"credit_balance":573.53,"last_login":0,"size_id":"","public_notes":"","client_hash":"ngQe8O6SInYp1D0SKacHE8f6nzr3Gc1UkkoyGMKI","address1":"873","address2":"220 Hand Glen","phone":"","city":"Lake Kallie","state":"Ohio","postal_code":"77890","country_id":"535","industry_id":"","custom_value1":"1974-10-02 21:56:55","custom_value2":"Aqua","custom_value3":"modi","custom_value4":"xhomenick@hotmail.com","shipping_address1":"89064","shipping_address2":"87854 Meda Junction","shipping_city":"South Aryanna","shipping_state":"Connecticut","shipping_postal_code":"52527-1873","shipping_country_id":"4","settings":{"entity":"App\\Models\\Client","industry_id":"","size_id":"","currency_id":"1"},"is_deleted":false,"vat_number":"881403416","id_number":"MU19IWUA7340242407223765691CMM","updated_at":1695811138,"archived_at":0,"created_at":1695796650,"display_name":"Paucek and Sons","number":"0005","has_valid_vat_number":false,"is_tax_exempt":false,"routing_id":"","tax_info":{},"contacts":{"App\\Models\\ClientContact":[{"id":"yMYerkEaOB","first_name":"Bret","last_name":"Beatty","email":"user@example.com","created_at":1695796650,"updated_at":1695796650,"archived_at":0,"is_primary":true,"is_locked":false,"phone":"1-985-403-1242","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","contact_key":"juMXBqyvDashDUvoYXsdcbZV2SRrFf0BOUFjsc6G","send_email":true,"last_login":0,"password":"**********","link":"http:\/\/ninja.test:8000\/client\/key_login\/juMXBqyvDashDUvoYXsdcbZV2SRrFf0BOUFjsc6G"},{"id":"gl9av2maG1","first_name":"Sandra","last_name":"Daniel","email":"linnie.aufderhar@example.net","created_at":1695796650,"updated_at":1695796650,"archived_at":0,"is_primary":false,"is_locked":false,"phone":"+17319151379","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","contact_key":"sm53aNvvsGUmLXFku0RLPUrP0zLj3rzBcTaGMjHd","send_email":true,"last_login":0,"password":"**********","link":"http:\/\/ninja.test:8000\/client\/key_login\/sm53aNvvsGUmLXFku0RLPUrP0zLj3rzBcTaGMjHd"},{"id":"7LDdwpRe1Y","first_name":"Leone","last_name":"Bode","email":"ipollich@example.org","created_at":1695796650,"updated_at":1695796650,"archived_at":0,"is_primary":false,"is_locked":false,"phone":"(424) 789-3412","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","contact_key":"gDUwiOqRehgCHWbbctW8qgKiLmma3xvsZi10a5Ma","send_email":true,"last_login":0,"password":"**********","link":"http:\/\/ninja.test:8000\/client\/key_login\/gDUwiOqRehgCHWbbctW8qgKiLmma3xvsZi10a5Ma"}]},"documents":{"App\\Models\\Document":[]},"gateway_tokens":{"App\\Models\\ClientGatewayToken":[]}},"tasks":{"App\\Models\\Task":[{"id":"k8mepZ1bMy","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0009","description":"Tenetur molestiae voluptatem voluptate nostrum.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"l4zbqQ3bpr","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0010","description":"Vitae eum amet magni.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"yMYer2weOB","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0011","description":"Eos facilis maiores enim harum.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"gl9avQVeG1","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0012","description":"Vero iure veritatis odio voluptate dolorem.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"7LDdw0Je1Y","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0013","description":"Nulla quisquam autem blanditiis sed tempore.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"JX7ax6Jdyv","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0014","description":"Eveniet quos est odit quam repellat.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"kzPdywVaQr","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0015","description":"Molestiae facilis magni vitae ducimus eius et.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"mxkaz6raJ0","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0016","description":"Quia nam et et excepturi explicabo.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"4w9aA6BbvM","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0017","description":"Velit et reiciendis accusamus qui quo.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"X46dBrxd79","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0018","description":"Possimus ipsum dolorum accusamus.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"oBDbDqBdl2","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0019","description":"Ipsam ex aut rerum eius id.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"K4oeEqNe0B","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0020","description":"Et et et occaecati non quis ut ea enim.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"xYRdGRybDz","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0021","description":"Rerum voluptatum nihil impedit doloribus enim.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"1YQdJNDdOG","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0022","description":"Corrupti quos voluptas ut veniam perferendis.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"4y1aKLrbQG","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0023","description":"Est nobis aut a corporis ullam consequatur illum.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"q9wdLvgajP","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0024","description":"Sed sunt labore ea dolorum eligendi et.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"7N1aMJQbWm","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0025","description":"Fugit tempora iure aut aut exercitationem a.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"QJ0dNYLbLO","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0026","description":"Sed enim et rem maxime ipsam vitae labore.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"z3YaOPgbxq","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0027","description":"Animi ex dolores illum accusantium eos.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"mWZdPzzaKg","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0028","description":"Amet quam eligendi assumenda sapiente fugiat.","duration":0,"rate":0,"created_at":1695797958,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"qM7e5Ba2vp","is_deleted":false,"time_log":"[[1694933958,1695365958,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-16","documents":{"App\\Models\\Document":[]},"project":{"id":"qM7e5Ba2vp","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Jace Windler DVM","number":"0002","created_at":1695797958,"updated_at":1695798905,"archived_at":0,"is_deleted":false,"task_rate":38,"due_date":"","private_notes":"Private Project Notes","public_notes":"Rerum voluptas incidunt velit.","budgeted_hours":826,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}}]}},{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"client":{"id":"QJ0dN6dLOv","user_id":"wMvbmOeYAl","assigned_user_id":"","name":"Paucek and Sons","website":"http:\/\/www.wiegand.com\/sit-repellendus-enim-porro-aut-voluptas-voluptates.html","private_notes":"In nihil non voluptas voluptatibus molestiae et. Nihil labore eligendi omnis id. Et cumque reiciendis blanditiis fugiat.","balance":19958.86,"group_settings_id":"","paid_to_date":18895.75,"payment_balance":0,"credit_balance":573.53,"last_login":0,"size_id":"","public_notes":"","client_hash":"ngQe8O6SInYp1D0SKacHE8f6nzr3Gc1UkkoyGMKI","address1":"873","address2":"220 Hand Glen","phone":"","city":"Lake Kallie","state":"Ohio","postal_code":"77890","country_id":"535","industry_id":"","custom_value1":"1974-10-02 21:56:55","custom_value2":"Aqua","custom_value3":"modi","custom_value4":"xhomenick@hotmail.com","shipping_address1":"89064","shipping_address2":"87854 Meda Junction","shipping_city":"South Aryanna","shipping_state":"Connecticut","shipping_postal_code":"52527-1873","shipping_country_id":"4","settings":{"entity":"App\\Models\\Client","industry_id":"","size_id":"","currency_id":"1"},"is_deleted":false,"vat_number":"881403416","id_number":"MU19IWUA7340242407223765691CMM","updated_at":1695811138,"archived_at":0,"created_at":1695796650,"display_name":"Paucek and Sons","number":"0005","has_valid_vat_number":false,"is_tax_exempt":false,"routing_id":"","tax_info":{},"contacts":{"App\\Models\\ClientContact":[{"id":"yMYerkEaOB","first_name":"Bret","last_name":"Beatty","email":"user@example.com","created_at":1695796650,"updated_at":1695796650,"archived_at":0,"is_primary":true,"is_locked":false,"phone":"1-985-403-1242","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","contact_key":"juMXBqyvDashDUvoYXsdcbZV2SRrFf0BOUFjsc6G","send_email":true,"last_login":0,"password":"**********","link":"http:\/\/ninja.test:8000\/client\/key_login\/juMXBqyvDashDUvoYXsdcbZV2SRrFf0BOUFjsc6G"},{"id":"gl9av2maG1","first_name":"Sandra","last_name":"Daniel","email":"linnie.aufderhar@example.net","created_at":1695796650,"updated_at":1695796650,"archived_at":0,"is_primary":false,"is_locked":false,"phone":"+17319151379","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","contact_key":"sm53aNvvsGUmLXFku0RLPUrP0zLj3rzBcTaGMjHd","send_email":true,"last_login":0,"password":"**********","link":"http:\/\/ninja.test:8000\/client\/key_login\/sm53aNvvsGUmLXFku0RLPUrP0zLj3rzBcTaGMjHd"},{"id":"7LDdwpRe1Y","first_name":"Leone","last_name":"Bode","email":"ipollich@example.org","created_at":1695796650,"updated_at":1695796650,"archived_at":0,"is_primary":false,"is_locked":false,"phone":"(424) 789-3412","custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","contact_key":"gDUwiOqRehgCHWbbctW8qgKiLmma3xvsZi10a5Ma","send_email":true,"last_login":0,"password":"**********","link":"http:\/\/ninja.test:8000\/client\/key_login\/gDUwiOqRehgCHWbbctW8qgKiLmma3xvsZi10a5Ma"}]},"documents":{"App\\Models\\Document":[]},"gateway_tokens":{"App\\Models\\ClientGatewayToken":[]}},"tasks":{"App\\Models\\Task":[{"id":"LYqaQ67bnj","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0029","description":"Optio illum sapiente explicabo qui molestias.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"JAPdRPLaGy","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0030","description":"Ratione culpa tenetur molestiae beatae.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"Oy5eV75aEP","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0031","description":"Deleniti mollitia qui sint dicta quod.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"rlNbWQWeyg","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0032","description":"In illo omnis dolores.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"kQBeXrkbyK","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0033","description":"Ut quo impedit et et architecto.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"W4QbYy0bzq","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0034","description":"Quo recusandae quam debitis dolorem facere aut.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"joQeZzvepZ","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0035","description":"At magni sed inventore molestiae.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"EKQe1G3bJY","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0036","description":"Placeat delectus beatae qui enim consequuntur ea.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"yJrb27JdWL","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0037","description":"Iste nulla id quisquam.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"GELe3yrb69","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0038","description":"Quia laborum quis sed qui sunt.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695799099,"archived_at":0,"invoice_id":"mxkazm8eJ0","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"KGRb4z2eBL","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0039","description":"Omnis amet illum inventore.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695799099,"archived_at":0,"invoice_id":"mxkazm8eJ0","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"qM7e5Rxa2v","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0040","description":"Tempore dolore aut necessitatibus ex illo.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695799099,"archived_at":0,"invoice_id":"mxkazm8eJ0","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"QK9b6B7bEv","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0041","description":"Ipsam eos deleniti delectus.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695799099,"archived_at":0,"invoice_id":"mxkazm8eJ0","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"O5xe7pwa7r","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0042","description":"Aperiam quae voluptas voluptatem vero.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695799099,"archived_at":0,"invoice_id":"mxkazm8eJ0","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"MVyb8MldvA","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0043","description":"Voluptatem iusto quod cupiditate.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"VWPe9DPdLy","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0044","description":"Ab occaecati ut in qui.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798950,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"X46dBXa79j","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"QnXe007exr","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0045","description":"At ratione dicta dicta ab earum.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"Wjnegn9dwZ","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0046","description":"Omnis dolores ducimus iusto maxime aut iure.","duration":0,"rate":0,"created_at":1695797987,"updated_at":1695798928,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"4w9aAOdvMR","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"Volej0WbjN","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0047","description":"Possimus ut quia commodi voluptatem.","duration":0,"rate":33,"created_at":1695797987,"updated_at":1695799099,"archived_at":0,"invoice_id":"mxkazm8eJ0","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"mxkazYeJ0P","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}},{"id":"WpmbkrxazJ","user_id":"wMvbmOeYAl","assigned_user_id":"","number":"0048","description":"Blanditiis ad mollitia ratione veritatis.","duration":0,"rate":55,"created_at":1695797987,"updated_at":1695798883,"archived_at":0,"invoice_id":"","client_id":"QJ0dN6dLOv","project_id":"QK9b6nbEvY","is_deleted":false,"time_log":"[[1695761987,1695779987,\"description\",false]]","is_running":false,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status_id":"kzPdy7aQro","status_sort_order":0,"is_date_based":false,"status_order":null,"date":"2023-09-26","documents":{"App\\Models\\Document":[]},"project":{"id":"QK9b6nbEvY","user_id":"wMvbmOeYAl","assigned_user_id":"","client_id":"QJ0dN6dLOv","name":"Linnie Pfannerstill","number":"0001","created_at":1695797987,"updated_at":1695798405,"archived_at":0,"is_deleted":false,"task_rate":97,"due_date":"2023-09-30","private_notes":"These are the private notes for this user.","public_notes":"Quo sed quis reprehenderit est consequatur et.","budgeted_hours":738,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"documents":{"App\\Models\\Document":[]}}}]}}]';
+ public string $project_data = '[{"name":"Abel Moore","number":"0001","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$107.00","task_rate_raw":"107.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Omnis modi optio maxime ut inventore.","budgeted_hours":339,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":390,"tasks":[{"number":"0002","description":"Et dolorem nihil qui quas asperiores nulla aut praesentium. Ea quasi porro facere eligendi. Et assumenda illum nostrum natus repellat eveniet. Sequi odio nulla perspiciatis doloremque.","duration":966982,"rate":"$76.00","rate_raw":"76.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700492035,"end_date":"20\/Nov\/2023 14:11:55","description":"Nihil voluptas et sint et.","billable":true,"duration":63569},{"start_date_raw":1700492335,"start_date":"20\/Nov\/2023 14:11:55","end_date_raw":1700554011,"end_date":"21\/Nov\/2023 08:11:51","description":"Aut consequuntur aliquam earum aut reiciendis.","billable":false,"duration":61676},{"start_date_raw":1700554311,"start_date":"21\/Nov\/2023 08:11:51","end_date_raw":1700586651,"end_date":"21\/Nov\/2023 17:11:51","description":"Occaecati consectetur temporibus neque rerum sed rem iure.","billable":true,"duration":32340},{"start_date_raw":1700586951,"start_date":"21\/Nov\/2023 17:11:51","end_date_raw":1700644903,"end_date":"22\/Nov\/2023 09:11:43","description":"Ducimus voluptate aliquid aliquam nobis.","billable":true,"duration":57952},{"start_date_raw":1700645203,"start_date":"22\/Nov\/2023 09:11:43","end_date_raw":1700724132,"end_date":"23\/Nov\/2023 07:11:12","description":"Non ipsam consequatur voluptatem illum.","billable":true,"duration":78929},{"start_date_raw":1700724432,"start_date":"23\/Nov\/2023 07:11:12","end_date_raw":1700790596,"end_date":"24\/Nov\/2023 01:11:56","description":"Aspernatur quia voluptate molestias non.","billable":false,"duration":66164},{"start_date_raw":1700790896,"start_date":"24\/Nov\/2023 01:11:56","end_date_raw":1700812808,"end_date":"24\/Nov\/2023 08:11:08","description":"Sed quod omnis officiis asperiores natus facere minus nemo.","billable":false,"duration":21912},{"start_date_raw":1700813108,"start_date":"24\/Nov\/2023 08:11:08","end_date_raw":1700865275,"end_date":"24\/Nov\/2023 22:11:35","description":"Tenetur quaerat ea magni placeat.","billable":false,"duration":52167},{"start_date_raw":1700865575,"start_date":"24\/Nov\/2023 22:11:35","end_date_raw":1700888516,"end_date":"25\/Nov\/2023 05:11:56","description":"Sequi dolor laborum deserunt rerum.","billable":true,"duration":22941},{"start_date_raw":1700888816,"start_date":"25\/Nov\/2023 05:11:56","end_date_raw":1700933259,"end_date":"25\/Nov\/2023 17:11:39","description":"Est qui velit ipsum et nesciunt qui ut.","billable":true,"duration":44443},{"start_date_raw":1700933559,"start_date":"25\/Nov\/2023 17:11:39","end_date_raw":1700979107,"end_date":"26\/Nov\/2023 06:11:47","description":"Sint et quo quo.","billable":false,"duration":45548},{"start_date_raw":1700979407,"start_date":"26\/Nov\/2023 06:11:47","end_date_raw":1701002669,"end_date":"26\/Nov\/2023 12:11:29","description":"Omnis unde sit similique dolor fugit totam.","billable":true,"duration":23262},{"start_date_raw":1701002969,"start_date":"26\/Nov\/2023 12:11:29","end_date_raw":1701071339,"end_date":"27\/Nov\/2023 07:11:59","description":"Ducimus qui voluptas accusamus.","billable":true,"duration":68370},{"start_date_raw":1701071639,"start_date":"27\/Nov\/2023 07:11:59","end_date_raw":1701100825,"end_date":"27\/Nov\/2023 16:11:25","description":"Soluta sit non nobis ab et ad libero sint.","billable":false,"duration":29186},{"start_date_raw":1701101125,"start_date":"27\/Nov\/2023 16:11:25","end_date_raw":1701157799,"end_date":"28\/Nov\/2023 07:11:59","description":"Cumque dignissimos error qui ut.","billable":true,"duration":56674},{"start_date_raw":1701158099,"start_date":"28\/Nov\/2023 07:11:59","end_date_raw":1701214020,"end_date":"28\/Nov\/2023 23:11:00","description":"Molestias omnis aliquid voluptatem cupiditate ut.","billable":true,"duration":55921},{"start_date_raw":1701214320,"start_date":"28\/Nov\/2023 23:11:00","end_date_raw":1701286375,"end_date":"29\/Nov\/2023 19:11:55","description":"Distinctio commodi est ab.","billable":true,"duration":72055},{"start_date_raw":1701286675,"start_date":"29\/Nov\/2023 19:11:55","end_date_raw":1701330081,"end_date":"30\/Nov\/2023 07:11:21","description":"Nisi dolores omnis veritatis.","billable":false,"duration":43406},{"start_date_raw":1701330381,"start_date":"30\/Nov\/2023 07:11:21","end_date_raw":1701398228,"end_date":"01\/Dec\/2023 02:12:08","description":"Qui aut velit quam dolore qui asperiores.","billable":false,"duration":67847},{"start_date_raw":1701398528,"start_date":"01\/Dec\/2023 02:12:08","end_date_raw":1701401148,"end_date":"01\/Dec\/2023 03:12:48","description":"Laudantium est laudantium ea ut repellendus.","billable":true,"duration":2620}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0003","description":"Qui excepturi et aut et voluptates eius perferendis. Repellat eum illo quis aliquid occaecati reprehenderit officia. Est earum nihil similique recusandae aut ut est error. Enim molestiae assumenda quaerat neque unde. Consequatur vel placeat commodi molestiae.","duration":259657,"rate":"$9.00","rate_raw":"9.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700498928,"end_date":"20\/Nov\/2023 16:11:48","description":"Animi asperiores velit quaerat sapiente dolorem officiis.","billable":false,"duration":70462},{"start_date_raw":1700499228,"start_date":"20\/Nov\/2023 16:11:48","end_date_raw":1700516753,"end_date":"20\/Nov\/2023 21:11:53","description":"Et facere ut tempora similique et sunt culpa.","billable":false,"duration":17525},{"start_date_raw":1700517053,"start_date":"20\/Nov\/2023 21:11:53","end_date_raw":1700523921,"end_date":"20\/Nov\/2023 23:11:21","description":"Consequatur enim non reprehenderit quia.","billable":false,"duration":6868},{"start_date_raw":1700524221,"start_date":"20\/Nov\/2023 23:11:21","end_date_raw":1700609374,"end_date":"21\/Nov\/2023 23:11:34","description":"Nobis non nesciunt ut reprehenderit at.","billable":false,"duration":85153},{"start_date_raw":1700609674,"start_date":"21\/Nov\/2023 23:11:34","end_date_raw":1700689323,"end_date":"22\/Nov\/2023 21:11:03","description":"Blanditiis repellendus quo voluptatum eveniet iste.","billable":false,"duration":79649}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0004","description":"Ipsam tempora id vero perferendis. Nulla laudantium iste qui quod et voluptatem. Aliquam et vel est minus ratione.","duration":179131,"rate":"$146.00","rate_raw":"146.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700446786,"end_date":"20\/Nov\/2023 02:11:46","description":"Ipsam voluptatum sed officiis eos quo.","billable":true,"duration":18320},{"start_date_raw":1700447086,"start_date":"20\/Nov\/2023 02:11:46","end_date_raw":1700520087,"end_date":"20\/Nov\/2023 22:11:27","description":"Et maxime rem provident veritatis.","billable":true,"duration":73001},{"start_date_raw":1700520387,"start_date":"20\/Nov\/2023 22:11:27","end_date_raw":1700603783,"end_date":"21\/Nov\/2023 21:11:23","description":"Deserunt soluta dolorem harum voluptas necessitatibus eum laborum omnis.","billable":false,"duration":83396},{"start_date_raw":1700604083,"start_date":"21\/Nov\/2023 22:11:23","end_date_raw":1700608497,"end_date":"21\/Nov\/2023 23:11:57","description":"Esse et aperiam nobis dolor voluptas.","billable":true,"duration":4414}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}}],"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},{"name":"Prof. Noah Jaskolski II","number":"0002","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$52.00","task_rate_raw":"52.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Mollitia ut vel quam. Quia et aut minus.","budgeted_hours":660,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":57,"tasks":[{"number":"0006","description":"Dolor quidem aperiam rerum. Voluptates aut vel ut consequatur. Nam et unde cupiditate qui voluptates voluptatum. Temporibus assumenda enim nam neque.","duration":156986,"rate":"$92.00","rate_raw":"92.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428467,"start_date":"19\/Nov\/2023 21:11:27","end_date_raw":1700443047,"end_date":"20\/Nov\/2023 01:11:27","description":"Unde sequi dicta corporis odio.","billable":true,"duration":14580},{"start_date_raw":1700443347,"start_date":"20\/Nov\/2023 01:11:27","end_date_raw":1700489146,"end_date":"20\/Nov\/2023 14:11:46","description":"Qui rem id inventore velit corporis vitae.","billable":false,"duration":45799},{"start_date_raw":1700489446,"start_date":"20\/Nov\/2023 14:11:46","end_date_raw":1700514655,"end_date":"20\/Nov\/2023 21:11:55","description":"Rerum repellat unde et blanditiis sunt animi aliquid accusantium.","billable":false,"duration":25209},{"start_date_raw":1700514955,"start_date":"20\/Nov\/2023 21:11:55","end_date_raw":1700515449,"end_date":"20\/Nov\/2023 21:11:09","description":"Quasi velit sit et explicabo quibusdam nam.","billable":true,"duration":494},{"start_date_raw":1700515749,"start_date":"20\/Nov\/2023 21:11:09","end_date_raw":1700586653,"end_date":"21\/Nov\/2023 17:11:53","description":"Numquam eos aut eum est corrupti dolorem et.","billable":false,"duration":70904}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"}},{"number":"0007","description":"Omnis totam eum sed dolores quod rerum. Ducimus voluptate iste quia dolorum consequatur sint. Velit vitae sint qui molestias. Dolores ea rerum voluptates iusto qui natus beatae.","duration":47670,"rate":"$88.00","rate_raw":"88.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428467,"start_date":"19\/Nov\/2023 21:11:27","end_date_raw":1700476137,"end_date":"20\/Nov\/2023 10:11:57","description":"Sint laudantium quia eveniet quod nobis occaecati nihil.","billable":false,"duration":47670}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"}}],"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},{"name":"Mr. Easton Streich","number":"0003","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$153.00","task_rate_raw":"153.000000","due_date":"28\/Nov\/2023","private_notes":"","public_notes":"Debitis sit ut voluptatem eaque veritatis.","budgeted_hours":216,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":496,"tasks":[{"number":"0009","description":"Ipsam numquam nesciunt corporis veritatis vitae porro maiores. Delectus sit itaque dolores. Atque et dolorem nisi est.","duration":439161,"rate":"$120.00","rate_raw":"120.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700434593,"end_date":"19\/Nov\/2023 22:11:33","description":"At unde dolores quasi quia.","billable":true,"duration":6125},{"start_date_raw":1700434893,"start_date":"19\/Nov\/2023 23:11:33","end_date_raw":1700498703,"end_date":"20\/Nov\/2023 16:11:03","description":"Et quae non voluptatum nam quia velit suscipit.","billable":false,"duration":63810},{"start_date_raw":1700499003,"start_date":"20\/Nov\/2023 16:11:03","end_date_raw":1700548104,"end_date":"21\/Nov\/2023 06:11:24","description":"Quidem delectus sed et.","billable":true,"duration":49101},{"start_date_raw":1700548404,"start_date":"21\/Nov\/2023 06:11:24","end_date_raw":1700629022,"end_date":"22\/Nov\/2023 04:11:02","description":"Soluta velit enim explicabo dolorem commodi.","billable":false,"duration":80618},{"start_date_raw":1700629322,"start_date":"22\/Nov\/2023 05:11:02","end_date_raw":1700647716,"end_date":"22\/Nov\/2023 10:11:36","description":"Est magni qui quis.","billable":false,"duration":18394},{"start_date_raw":1700648016,"start_date":"22\/Nov\/2023 10:11:36","end_date_raw":1700731147,"end_date":"23\/Nov\/2023 09:11:07","description":"Saepe aspernatur non molestias dolor ea quos in.","billable":false,"duration":83131},{"start_date_raw":1700731447,"start_date":"23\/Nov\/2023 09:11:07","end_date_raw":1700782753,"end_date":"23\/Nov\/2023 23:11:13","description":"Alias id nihil laboriosam aliquam odio qui excepturi.","billable":true,"duration":51306},{"start_date_raw":1700783053,"start_date":"23\/Nov\/2023 23:11:13","end_date_raw":1700795456,"end_date":"24\/Nov\/2023 03:11:56","description":"Eos numquam et atque quia a qui nesciunt.","billable":false,"duration":12403},{"start_date_raw":1700795756,"start_date":"24\/Nov\/2023 03:11:56","end_date_raw":1700812488,"end_date":"24\/Nov\/2023 07:11:48","description":"Ut voluptas in natus qui.","billable":false,"duration":16732},{"start_date_raw":1700812788,"start_date":"24\/Nov\/2023 07:11:48","end_date_raw":1700842826,"end_date":"24\/Nov\/2023 16:11:26","description":"Est aut magnam ratione.","billable":false,"duration":30038},{"start_date_raw":1700843126,"start_date":"24\/Nov\/2023 16:11:26","end_date_raw":1700870629,"end_date":"25\/Nov\/2023 00:11:49","description":"Exercitationem non odio quasi ut saepe.","billable":true,"duration":27503}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0010","description":"Quo recusandae optio est saepe consectetur optio. Accusantium eum quia eaque. Voluptatum eligendi similique velit dolor eos rerum cumque quaerat.","duration":425934,"rate":"$98.00","rate_raw":"98.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700463790,"end_date":"20\/Nov\/2023 07:11:10","description":"Culpa aut consequatur earum ut.","billable":false,"duration":35322},{"start_date_raw":1700464090,"start_date":"20\/Nov\/2023 07:11:10","end_date_raw":1700536862,"end_date":"21\/Nov\/2023 03:11:02","description":"Reprehenderit et esse qui hic quia est iusto.","billable":false,"duration":72772},{"start_date_raw":1700537162,"start_date":"21\/Nov\/2023 03:11:02","end_date_raw":1700592394,"end_date":"21\/Nov\/2023 18:11:34","description":"In est enim dolore nesciunt distinctio magni qui.","billable":true,"duration":55232},{"start_date_raw":1700592694,"start_date":"21\/Nov\/2023 18:11:34","end_date_raw":1700635771,"end_date":"22\/Nov\/2023 06:11:31","description":"Est saepe quasi alias aut odit officiis corporis.","billable":true,"duration":43077},{"start_date_raw":1700636071,"start_date":"22\/Nov\/2023 06:11:31","end_date_raw":1700637953,"end_date":"22\/Nov\/2023 07:11:53","description":"Consequuntur ipsa ut voluptate accusamus quibusdam sint sed.","billable":false,"duration":1882},{"start_date_raw":1700638253,"start_date":"22\/Nov\/2023 07:11:53","end_date_raw":1700687668,"end_date":"22\/Nov\/2023 21:11:28","description":"Sunt similique error et nostrum reprehenderit dolor.","billable":false,"duration":49415},{"start_date_raw":1700687968,"start_date":"22\/Nov\/2023 21:11:28","end_date_raw":1700712068,"end_date":"23\/Nov\/2023 04:11:08","description":"Aut rerum quis fugiat nostrum facilis ut.","billable":false,"duration":24100},{"start_date_raw":1700712368,"start_date":"23\/Nov\/2023 04:11:08","end_date_raw":1700783951,"end_date":"23\/Nov\/2023 23:11:11","description":"Aut culpa omnis sint et quos quisquam sint.","billable":true,"duration":71583},{"start_date_raw":1700784251,"start_date":"24\/Nov\/2023 00:11:11","end_date_raw":1700845166,"end_date":"24\/Nov\/2023 16:11:26","description":"Voluptas ut ratione porro eaque iste voluptas.","billable":true,"duration":60915},{"start_date_raw":1700845466,"start_date":"24\/Nov\/2023 17:11:26","end_date_raw":1700857102,"end_date":"24\/Nov\/2023 20:11:22","description":"Qui ipsa minus sed saepe maiores necessitatibus.","billable":true,"duration":11636}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0011","description":"Eligendi molestiae et quis et tempora esse ut. Sed ut est possimus et minus aut incidunt. Quibusdam rerum incidunt molestias est qui quam temporibus fuga.","duration":637522,"rate":"$120.00","rate_raw":"120.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700499282,"end_date":"20\/Nov\/2023 16:11:42","description":"Quasi temporibus doloremque consequatur minus pariatur facere.","billable":true,"duration":70814},{"start_date_raw":1700499582,"start_date":"20\/Nov\/2023 16:11:42","end_date_raw":1700584386,"end_date":"21\/Nov\/2023 16:11:06","description":"Id distinctio sed eos qui.","billable":true,"duration":84804},{"start_date_raw":1700584686,"start_date":"21\/Nov\/2023 16:11:06","end_date_raw":1700635554,"end_date":"22\/Nov\/2023 06:11:54","description":"Facere explicabo non nostrum.","billable":true,"duration":50868},{"start_date_raw":1700635854,"start_date":"22\/Nov\/2023 06:11:54","end_date_raw":1700672533,"end_date":"22\/Nov\/2023 17:11:13","description":"Numquam sit labore facere voluptatibus quibusdam reiciendis et.","billable":true,"duration":36679},{"start_date_raw":1700672833,"start_date":"22\/Nov\/2023 17:11:13","end_date_raw":1700678587,"end_date":"22\/Nov\/2023 18:11:07","description":"Perspiciatis ad hic nostrum et.","billable":true,"duration":5754},{"start_date_raw":1700678887,"start_date":"22\/Nov\/2023 18:11:07","end_date_raw":1700708730,"end_date":"23\/Nov\/2023 03:11:30","description":"Qui culpa iure eos quaerat voluptatum numquam inventore.","billable":true,"duration":29843},{"start_date_raw":1700709030,"start_date":"23\/Nov\/2023 03:11:30","end_date_raw":1700765439,"end_date":"23\/Nov\/2023 18:11:39","description":"Similique molestiae atque voluptatem debitis dolorem quos quis et.","billable":false,"duration":56409},{"start_date_raw":1700765739,"start_date":"23\/Nov\/2023 18:11:39","end_date_raw":1700831780,"end_date":"24\/Nov\/2023 13:11:20","description":"Nam dolorum optio et omnis.","billable":true,"duration":66041},{"start_date_raw":1700832080,"start_date":"24\/Nov\/2023 13:11:20","end_date_raw":1700844498,"end_date":"24\/Nov\/2023 16:11:18","description":"Non eos amet repellat tempore id.","billable":false,"duration":12418},{"start_date_raw":1700844798,"start_date":"24\/Nov\/2023 16:11:18","end_date_raw":1700899153,"end_date":"25\/Nov\/2023 07:11:13","description":"Iste neque nostrum laudantium officia.","billable":false,"duration":54355},{"start_date_raw":1700899453,"start_date":"25\/Nov\/2023 08:11:13","end_date_raw":1700971949,"end_date":"26\/Nov\/2023 04:11:29","description":"Ut quia ratione sed et.","billable":true,"duration":72496},{"start_date_raw":1700972249,"start_date":"26\/Nov\/2023 04:11:29","end_date_raw":1700984833,"end_date":"26\/Nov\/2023 07:11:13","description":"Sapiente quia magni quisquam eos rerum rem.","billable":false,"duration":12584},{"start_date_raw":1700985133,"start_date":"26\/Nov\/2023 07:11:13","end_date_raw":1701069590,"end_date":"27\/Nov\/2023 07:11:50","description":"Nulla et ducimus doloribus est.","billable":true,"duration":84457}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0012","description":"Ea cumque amet quas et suscipit. Voluptatum libero enim minus necessitatibus qui voluptatem. Voluptates soluta quae in et aut possimus veniam.","duration":283580,"rate":"$78.00","rate_raw":"78.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700469690,"end_date":"20\/Nov\/2023 08:11:30","description":"Placeat vel sit voluptas architecto sed.","billable":true,"duration":41222},{"start_date_raw":1700469990,"start_date":"20\/Nov\/2023 08:11:30","end_date_raw":1700483859,"end_date":"20\/Nov\/2023 12:11:39","description":"Voluptatem est quo est dolorem.","billable":true,"duration":13869},{"start_date_raw":1700484159,"start_date":"20\/Nov\/2023 12:11:39","end_date_raw":1700541376,"end_date":"21\/Nov\/2023 04:11:16","description":"Perferendis nulla quos omnis inventore sint.","billable":false,"duration":57217},{"start_date_raw":1700541676,"start_date":"21\/Nov\/2023 04:11:16","end_date_raw":1700609280,"end_date":"21\/Nov\/2023 23:11:00","description":"Quia quae ad cum neque.","billable":true,"duration":67604},{"start_date_raw":1700609580,"start_date":"21\/Nov\/2023 23:11:00","end_date_raw":1700668490,"end_date":"22\/Nov\/2023 15:11:50","description":"Pariatur et ipsa cumque consequatur voluptatum nemo.","billable":true,"duration":58910},{"start_date_raw":1700668790,"start_date":"22\/Nov\/2023 15:11:50","end_date_raw":1700690815,"end_date":"22\/Nov\/2023 22:11:55","description":"Officia explicabo illo ex tenetur.","billable":true,"duration":22025},{"start_date_raw":1700691115,"start_date":"22\/Nov\/2023 22:11:55","end_date_raw":1700713848,"end_date":"23\/Nov\/2023 04:11:48","description":"Quasi neque tempore aut at.","billable":true,"duration":22733}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}}],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},{"name":"Elenor Orn","number":"0004","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$39.00","task_rate_raw":"39.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Distinctio ut voluptas deleniti est sed quae.","budgeted_hours":372,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":331,"tasks":[{"number":"0014","description":"In soluta aliquid et eius. Molestiae veritatis animi culpa et amet porro modi ut. Id sequi nobis itaque modi explicabo voluptatem quam. Non ex voluptatem error aspernatur odit.","duration":346244,"rate":"$70.00","rate_raw":"70.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700458211,"end_date":"20\/Nov\/2023 05:11:11","description":"Voluptate aut dicta recusandae consectetur est ducimus.","billable":false,"duration":29743},{"start_date_raw":1700458511,"start_date":"20\/Nov\/2023 05:11:11","end_date_raw":1700516247,"end_date":"20\/Nov\/2023 21:11:27","description":"Dolores incidunt praesentium rerum.","billable":false,"duration":57736},{"start_date_raw":1700516547,"start_date":"20\/Nov\/2023 21:11:27","end_date_raw":1700549251,"end_date":"21\/Nov\/2023 06:11:31","description":"Perspiciatis consequatur et alias praesentium placeat modi aut.","billable":true,"duration":32704},{"start_date_raw":1700549551,"start_date":"21\/Nov\/2023 06:11:31","end_date_raw":1700618445,"end_date":"22\/Nov\/2023 02:11:45","description":"Esse libero incidunt non rem sunt quisquam repudiandae nisi.","billable":true,"duration":68894},{"start_date_raw":1700618745,"start_date":"22\/Nov\/2023 02:11:45","end_date_raw":1700698086,"end_date":"23\/Nov\/2023 00:11:06","description":"Earum consectetur esse fugit sint autem tempore.","billable":true,"duration":79341},{"start_date_raw":1700698386,"start_date":"23\/Nov\/2023 00:11:06","end_date_raw":1700776212,"end_date":"23\/Nov\/2023 21:11:12","description":"Saepe sit consequatur vel eos ad iusto nobis.","billable":true,"duration":77826}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0015","description":"Minus accusamus illum quia nihil voluptatum qui mollitia vel. Natus fugiat sequi quod eius occaecati non. Minus rerum ut eos est eveniet quae iure.","duration":410859,"rate":"$13.00","rate_raw":"13.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700506053,"end_date":"20\/Nov\/2023 18:11:33","description":"Iste neque officiis eum maiores.","billable":true,"duration":77585},{"start_date_raw":1700506353,"start_date":"20\/Nov\/2023 18:11:33","end_date_raw":1700572042,"end_date":"21\/Nov\/2023 13:11:22","description":"Minus perferendis quia amet.","billable":true,"duration":65689},{"start_date_raw":1700572342,"start_date":"21\/Nov\/2023 13:11:22","end_date_raw":1700637291,"end_date":"22\/Nov\/2023 07:11:51","description":"Commodi quaerat hic minus et voluptas velit.","billable":true,"duration":64949},{"start_date_raw":1700637591,"start_date":"22\/Nov\/2023 07:11:51","end_date_raw":1700649610,"end_date":"22\/Nov\/2023 10:11:10","description":"Vitae rerum natus aperiam quia explicabo.","billable":false,"duration":12019},{"start_date_raw":1700649910,"start_date":"22\/Nov\/2023 10:11:10","end_date_raw":1700693674,"end_date":"22\/Nov\/2023 22:11:34","description":"Quos sunt dolorum eveniet provident ut.","billable":false,"duration":43764},{"start_date_raw":1700693974,"start_date":"22\/Nov\/2023 22:11:34","end_date_raw":1700775335,"end_date":"23\/Nov\/2023 21:11:35","description":"Animi quibusdam quisquam ea error earum consectetur.","billable":true,"duration":81361},{"start_date_raw":1700775635,"start_date":"23\/Nov\/2023 21:11:35","end_date_raw":1700808126,"end_date":"24\/Nov\/2023 06:11:06","description":"Ratione ipsam molestiae dolorem sit architecto voluptas.","billable":true,"duration":32491},{"start_date_raw":1700808426,"start_date":"24\/Nov\/2023 06:11:06","end_date_raw":1700817758,"end_date":"24\/Nov\/2023 09:11:38","description":"Maxime reprehenderit voluptates culpa.","billable":false,"duration":9332},{"start_date_raw":1700818058,"start_date":"24\/Nov\/2023 09:11:38","end_date_raw":1700841727,"end_date":"24\/Nov\/2023 16:11:07","description":"Atque deleniti et laboriosam molestias repellat accusamus omnis.","billable":false,"duration":23669}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0016","description":"Temporibus illum voluptatibus molestias quia omnis illo molestias corporis. Hic et hic quia dolores quas sint dolorem. Repellendus minus quae fuga illum amet in voluptatum. Rerum mollitia est eum voluptatum architecto non nisi qui. Est et dolores omnis placeat repellat sed facilis.","duration":435319,"rate":"$89.00","rate_raw":"89.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700496403,"end_date":"20\/Nov\/2023 16:11:43","description":"Sunt unde repellat reiciendis quos porro et dolores.","billable":true,"duration":67934},{"start_date_raw":1700496703,"start_date":"20\/Nov\/2023 16:11:43","end_date_raw":1700551129,"end_date":"21\/Nov\/2023 07:11:49","description":"Voluptatem laborum repudiandae enim asperiores.","billable":false,"duration":54426},{"start_date_raw":1700551429,"start_date":"21\/Nov\/2023 07:11:49","end_date_raw":1700631865,"end_date":"22\/Nov\/2023 05:11:25","description":"Placeat numquam magnam occaecati.","billable":false,"duration":80436},{"start_date_raw":1700632165,"start_date":"22\/Nov\/2023 05:11:25","end_date_raw":1700695854,"end_date":"22\/Nov\/2023 23:11:54","description":"Qui quo et est vero autem reprehenderit.","billable":false,"duration":63689},{"start_date_raw":1700696154,"start_date":"22\/Nov\/2023 23:11:54","end_date_raw":1700736857,"end_date":"23\/Nov\/2023 10:11:17","description":"Et voluptatem distinctio dolor fuga hic ea.","billable":false,"duration":40703},{"start_date_raw":1700737157,"start_date":"23\/Nov\/2023 10:11:17","end_date_raw":1700790692,"end_date":"24\/Nov\/2023 01:11:32","description":"Quo expedita quidem ab dolor quam expedita porro.","billable":true,"duration":53535},{"start_date_raw":1700790992,"start_date":"24\/Nov\/2023 01:11:32","end_date_raw":1700817527,"end_date":"24\/Nov\/2023 09:11:47","description":"Adipisci voluptatem officiis quaerat ut quos facilis.","billable":false,"duration":26535},{"start_date_raw":1700817827,"start_date":"24\/Nov\/2023 09:11:47","end_date_raw":1700865888,"end_date":"24\/Nov\/2023 22:11:48","description":"Tenetur ut dolorem vero.","billable":true,"duration":48061}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}}],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},{"name":"Maryjane Macejkovic","number":"0005","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$78.00","task_rate_raw":"78.000000","due_date":"26\/Nov\/2023","private_notes":"","public_notes":"Nesciunt est sit ea explicabo.","budgeted_hours":405,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":194,"tasks":[{"number":"0018","description":"Odit rerum iusto quibusdam. A mollitia cupiditate enim consequatur omnis qui voluptas quibusdam. Recusandae et non ut ipsum asperiores non iusto.","duration":312865,"rate":"$95.00","rate_raw":"95.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700476677,"end_date":"20\/Nov\/2023 10:11:57","description":"Quam dolores ut dolorem quo sint atque.","billable":true,"duration":48208},{"start_date_raw":1700476977,"start_date":"20\/Nov\/2023 10:11:57","end_date_raw":1700520944,"end_date":"20\/Nov\/2023 22:11:44","description":"Unde minus veniam corporis qui laboriosam suscipit quas.","billable":true,"duration":43967},{"start_date_raw":1700521244,"start_date":"20\/Nov\/2023 23:11:44","end_date_raw":1700602639,"end_date":"21\/Nov\/2023 21:11:19","description":"Beatae molestiae molestias sed dolor recusandae et id eligendi.","billable":false,"duration":81395},{"start_date_raw":1700602939,"start_date":"21\/Nov\/2023 21:11:19","end_date_raw":1700682077,"end_date":"22\/Nov\/2023 19:11:17","description":"Repellendus nam perspiciatis exercitationem in iste officia.","billable":true,"duration":79138},{"start_date_raw":1700682377,"start_date":"22\/Nov\/2023 19:11:17","end_date_raw":1700692054,"end_date":"22\/Nov\/2023 22:11:34","description":"Consequatur quaerat dolor consequuntur aperiam enim reiciendis.","billable":true,"duration":9677},{"start_date_raw":1700692354,"start_date":"22\/Nov\/2023 22:11:34","end_date_raw":1700742834,"end_date":"23\/Nov\/2023 12:11:54","description":"Qui quia ut sed accusantium odit reprehenderit quaerat.","billable":true,"duration":50480}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"}},{"number":"0019","description":"Eius et dolor libero repellendus iste. Nemo sit error sed necessitatibus architecto et. Aspernatur omnis doloremque animi quas sed.","duration":387217,"rate":"$87.00","rate_raw":"87.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700434042,"end_date":"19\/Nov\/2023 22:11:22","description":"Aut aliquam totam in reprehenderit sint suscipit earum.","billable":false,"duration":5573},{"start_date_raw":1700434342,"start_date":"19\/Nov\/2023 22:11:22","end_date_raw":1700467844,"end_date":"20\/Nov\/2023 08:11:44","description":"Hic aliquid natus est.","billable":false,"duration":33502},{"start_date_raw":1700468144,"start_date":"20\/Nov\/2023 08:11:44","end_date_raw":1700532877,"end_date":"21\/Nov\/2023 02:11:37","description":"Illo atque dolores eligendi minus et ut consequuntur.","billable":false,"duration":64733},{"start_date_raw":1700533177,"start_date":"21\/Nov\/2023 02:11:37","end_date_raw":1700619369,"end_date":"22\/Nov\/2023 02:11:09","description":"Libero ipsa eligendi sit dolor eligendi quibusdam dicta tenetur.","billable":false,"duration":86192},{"start_date_raw":1700619669,"start_date":"22\/Nov\/2023 02:11:09","end_date_raw":1700646879,"end_date":"22\/Nov\/2023 09:11:39","description":"Dolor unde assumenda blanditiis tenetur blanditiis ipsam quis.","billable":true,"duration":27210},{"start_date_raw":1700647179,"start_date":"22\/Nov\/2023 09:11:39","end_date_raw":1700704537,"end_date":"23\/Nov\/2023 01:11:37","description":"Reprehenderit possimus nisi recusandae.","billable":true,"duration":57358},{"start_date_raw":1700704837,"start_date":"23\/Nov\/2023 02:11:37","end_date_raw":1700733175,"end_date":"23\/Nov\/2023 09:11:55","description":"Aut saepe sint qui magni.","billable":false,"duration":28338},{"start_date_raw":1700733475,"start_date":"23\/Nov\/2023 09:11:55","end_date_raw":1700735626,"end_date":"23\/Nov\/2023 10:11:46","description":"Facere repellendus voluptas illo a.","billable":true,"duration":2151},{"start_date_raw":1700735926,"start_date":"23\/Nov\/2023 10:11:46","end_date_raw":1700769798,"end_date":"23\/Nov\/2023 20:11:18","description":"Voluptatem praesentium ipsum soluta earum.","billable":false,"duration":33872},{"start_date_raw":1700770098,"start_date":"23\/Nov\/2023 20:11:18","end_date_raw":1700818386,"end_date":"24\/Nov\/2023 09:11:06","description":"Dicta eum quis dicta quae.","billable":true,"duration":48288}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"}}],"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}}]';
- public string $task_data = '[{"number":"0019","description":"","duration":0,"rate":"$0.00","rate_raw":"0.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"","project":[],"time_log":[],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"","client":[]},{"number":"0020","description":"","duration":0,"rate":"$0.00","rate_raw":"0.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"","project":[],"time_log":[],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"","client":[]},{"number":"0001","description":"Molestias officiis enim minus nulla officia. Quam voluptate sunt earum tempore reiciendis dicta libero molestiae. Qui molestiae consequatur est. Nesciunt est minima consequatur repellat est aut.","duration":0,"rate":"$4.00","rate_raw":"4.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":[],"time_log":[["16\/Nov\/2023 08:11:27","16\/Nov\/2023 19:11:43","A et porro distinctio non perferendis.",true,38656],["16\/Nov\/2023 19:11:43","17\/Nov\/2023 00:11:02","Rerum nemo nesciunt doloribus aut.",false,18139],["17\/Nov\/2023 00:11:02","18\/Nov\/2023 00:11:53","Omnis excepturi deleniti eaque quos nam perferendis esse.",true,86211],["18\/Nov\/2023 00:11:53","18\/Nov\/2023 03:11:38","Totam cumque exercitationem autem nemo.",false,9945],["18\/Nov\/2023 03:11:38","19\/Nov\/2023 01:11:17","Quae sequi adipisci nulla veniam dolore.",true,79839],["19\/Nov\/2023 02:11:17","20\/Nov\/2023 01:11:24","Qui iure voluptatem quasi eligendi illo molestias magnam.",true,84667],["20\/Nov\/2023 01:11:24","20\/Nov\/2023 12:11:47","Repudiandae qui sunt et corporis molestiae repudiandae sed.",false,39383],["20\/Nov\/2023 12:11:47","21\/Nov\/2023 07:11:28","Et excepturi minima soluta expedita.",true,66221],["21\/Nov\/2023 07:11:28","22\/Nov\/2023 00:11:16","Eligendi perferendis sed non expedita.",false,62988],["22\/Nov\/2023 00:11:16","22\/Nov\/2023 09:11:28","Autem error corporis non quae assumenda.",false,30492],["22\/Nov\/2023 09:11:28","23\/Nov\/2023 09:11:07","Sequi iure vel blanditiis incidunt vero voluptatibus placeat dolor.",true,86619],["23\/Nov\/2023 09:11:07","23\/Nov\/2023 12:11:27","Officia iusto aperiam sed expedita placeat excepturi.",false,9800]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Swaniawski, Toy and Runolfsdottir","balance":"0.000000","payment_balance":"0.000000","credit_balance":"0.000000"}},{"number":"0002","description":"Iusto officiis nostrum magni voluptate minima animi aut. Aut hic voluptate ea necessitatibus nihil. Necessitatibus sed deleniti error veritatis nihil et saepe.","duration":0,"rate":"$127.00","rate_raw":"127.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Coralie Vandervort Sr.","number":"0001","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$95.00","task_rate_raw":"95.000000","due_date":"26\/Nov\/2023","private_notes":"","public_notes":"Itaque eos aut eveniet voluptas.","budgeted_hours":185,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},"time_log":[["16\/Nov\/2023 08:11:27","16\/Nov\/2023 17:11:24","Iure praesentium corrupti quos exercitationem.",false,29877],["16\/Nov\/2023 17:11:24","17\/Nov\/2023 10:11:22","Earum mollitia sequi qui corrupti voluptate repellat rerum quod.",true,60178],["17\/Nov\/2023 10:11:22","18\/Nov\/2023 00:11:48","Dolorem voluptas nobis amet sit nobis.",false,50246],["18\/Nov\/2023 00:11:48","18\/Nov\/2023 22:11:40","Deserunt nostrum quis velit earum et hic adipisci omnis.",false,80692],["18\/Nov\/2023 22:11:40","19\/Nov\/2023 22:11:06","Voluptate sit laudantium blanditiis consequatur ab et.",true,84086],["19\/Nov\/2023 22:11:06","20\/Nov\/2023 03:11:06","Aperiam iure ipsam molestiae doloribus voluptatem esse.",false,19260],["20\/Nov\/2023 03:11:06","20\/Nov\/2023 07:11:27","Id ut odio aut.",false,14541],["20\/Nov\/2023 07:11:27","20\/Nov\/2023 16:11:57","Pariatur aliquid voluptas et ea laboriosam et.",true,32310],["20\/Nov\/2023 16:11:57","21\/Nov\/2023 09:11:22","Pariatur asperiores dolores quia vitae at dolorem culpa.",false,60805]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},{"number":"0003","description":"Odio ea consectetur dolorum fugit et dolores. Sed tempore temporibus vero porro cum exercitationem corrupti.","duration":0,"rate":"$62.00","rate_raw":"62.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Coralie Vandervort Sr.","number":"0001","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$95.00","task_rate_raw":"95.000000","due_date":"26\/Nov\/2023","private_notes":"","public_notes":"Itaque eos aut eveniet voluptas.","budgeted_hours":185,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},"time_log":[["16\/Nov\/2023 08:11:27","17\/Nov\/2023 01:11:44","Ratione temporibus tenetur minima nostrum doloremque.",true,58757],["17\/Nov\/2023 01:11:44","18\/Nov\/2023 00:11:44","Incidunt non velit beatae est cupiditate.",false,83460],["18\/Nov\/2023 00:11:44","18\/Nov\/2023 08:11:38","Consequatur alias non aut voluptatem nihil pariatur.",false,27354],["18\/Nov\/2023 08:11:38","18\/Nov\/2023 09:11:22","Quo officia sapiente ut enim voluptatem quis.",false,3524],["18\/Nov\/2023 09:11:22","19\/Nov\/2023 09:11:15","Nam ipsam vero ipsam.",false,85253],["19\/Nov\/2023 09:11:15","20\/Nov\/2023 06:11:14","Aut labore amet quaerat ratione rerum.",false,75359],["20\/Nov\/2023 06:11:14","20\/Nov\/2023 08:11:03","Dignissimos non sint fugit.",false,9469],["20\/Nov\/2023 08:11:03","20\/Nov\/2023 10:11:50","Id fugit totam aspernatur rerum.",true,4607],["20\/Nov\/2023 10:11:50","21\/Nov\/2023 07:11:58","Necessitatibus ea quibusdam dolorem vel beatae.",false,75668],["21\/Nov\/2023 07:11:58","22\/Nov\/2023 01:11:04","Expedita nihil non numquam quo accusamus veritatis.",true,65586],["22\/Nov\/2023 01:11:04","22\/Nov\/2023 12:11:26","Sunt soluta ipsum voluptates sed et est.",true,40522]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},{"number":"0004","description":"Perspiciatis nostrum omnis et ab rem est saepe. Voluptate deserunt aspernatur a pariatur. Itaque minus rerum cum minima dolores. Fugit similique magni aperiam sit deserunt.","duration":0,"rate":"$111.00","rate_raw":"111.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Coralie Vandervort Sr.","number":"0001","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$95.00","task_rate_raw":"95.000000","due_date":"26\/Nov\/2023","private_notes":"","public_notes":"Itaque eos aut eveniet voluptas.","budgeted_hours":185,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},"time_log":[["16\/Nov\/2023 08:11:27","16\/Nov\/2023 13:11:02","Sint quae maiores porro ipsa minus aut.",false,17975],["16\/Nov\/2023 14:11:02","17\/Nov\/2023 12:11:31","Voluptas et ut molestiae optio.",false,79109],["17\/Nov\/2023 12:11:31","17\/Nov\/2023 15:11:09","Asperiores illo ut cumque aut omnis praesentium adipisci est.",false,11018],["17\/Nov\/2023 15:11:09","17\/Nov\/2023 23:11:37","Velit quia ea aut eius cum eaque.",false,28768],["17\/Nov\/2023 23:11:37","18\/Nov\/2023 03:11:04","Pariatur voluptatem dolor repellendus et.",true,14007],["18\/Nov\/2023 03:11:04","18\/Nov\/2023 23:11:48","Sint exercitationem nostrum sunt sequi.",true,72104],["18\/Nov\/2023 23:11:48","19\/Nov\/2023 15:11:44","Voluptatem et qui unde.",false,59396]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},{"number":"0005","description":"Dolore qui voluptatem corporis iusto dolores debitis doloremque. Voluptatem quis eum nemo vel aut ut vero est. Ipsa error possimus facere et nisi facere.","duration":0,"rate":"$111.00","rate_raw":"111.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":[],"time_log":[["16\/Nov\/2023 08:11:28","17\/Nov\/2023 06:11:41","Voluptates ducimus adipisci necessitatibus magni repellat ut.",false,77413],["17\/Nov\/2023 06:11:41","17\/Nov\/2023 19:11:24","Ratione consequuntur omnis autem ut omnis error temporibus.",true,46243]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","client":{"name":"Kutch-Swaniawski","balance":"14698.790000","payment_balance":"0.000000","credit_balance":"0.000000"}},{"number":"0006","description":"Eligendi molestias libero eum qui ipsum. Esse exercitationem quis ut quidem quo quam quia. Quas vero quia magnam qui amet ut cumque. Sed aut alias deserunt aliquid saepe. Enim repudiandae qui iure omnis.","duration":0,"rate":"$47.00","rate_raw":"47.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Tiara Pacocha","number":"0002","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$130.00","task_rate_raw":"130.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Beatae aut suscipit ipsum non.","budgeted_hours":668,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},"time_log":[["16\/Nov\/2023 08:11:28","17\/Nov\/2023 06:11:43","Accusamus voluptatum sunt tenetur dolor nam non.",true,77595],["17\/Nov\/2023 06:11:43","17\/Nov\/2023 17:11:57","Voluptatem nihil deserunt eaque non sit.",true,38294],["17\/Nov\/2023 17:11:57","18\/Nov\/2023 07:11:44","Quam voluptas temporibus laborum vel iste atque.",true,49547],["18\/Nov\/2023 07:11:44","18\/Nov\/2023 16:11:13","Assumenda porro ut accusamus quos magnam.",true,33389],["18\/Nov\/2023 16:11:13","19\/Nov\/2023 07:11:32","Provident quam velit magni consectetur necessitatibus.",true,53119],["19\/Nov\/2023 07:11:32","19\/Nov\/2023 23:11:57","Ea accusamus omnis dolorum placeat.",true,58165],["19\/Nov\/2023 23:11:57","20\/Nov\/2023 15:11:52","Assumenda minus eos quis qui nisi magnam debitis quo.",false,56095],["20\/Nov\/2023 15:11:52","21\/Nov\/2023 03:11:32","Nostrum et voluptate unde incidunt animi.",true,45160],["21\/Nov\/2023 03:11:32","21\/Nov\/2023 06:11:19","Unde est fugiat optio modi.",true,9227],["21\/Nov\/2023 06:11:19","22\/Nov\/2023 03:11:00","Illo est sed quos alias explicabo.",false,74201],["22\/Nov\/2023 03:11:00","23\/Nov\/2023 00:11:04","Dolor aspernatur est aspernatur sapiente officia.",false,76624],["23\/Nov\/2023 00:11:04","23\/Nov\/2023 01:11:27","Voluptate quidem consequatur est at non autem architecto quo.",true,2603],["23\/Nov\/2023 01:11:27","23\/Nov\/2023 10:11:30","Omnis dolor atque nam amet laborum quaerat veritatis.",false,32823],["23\/Nov\/2023 10:11:30","23\/Nov\/2023 15:11:47","Rerum quaerat vel inventore ut deserunt fuga.",false,17237],["23\/Nov\/2023 15:11:47","23\/Nov\/2023 23:11:52","Quae fugiat non ipsum voluptatem aspernatur.",false,29825]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},{"number":"0007","description":"Dolor et architecto velit. Quia nesciunt unde modi ea nostrum ipsa maxime nihil. Non velit delectus in quis. Molestias aut est fuga atque corporis est.","duration":0,"rate":"$50.00","rate_raw":"50.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Tiara Pacocha","number":"0002","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$130.00","task_rate_raw":"130.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Beatae aut suscipit ipsum non.","budgeted_hours":668,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},"time_log":[["16\/Nov\/2023 08:11:28","17\/Nov\/2023 07:11:33","Sint qui architecto cum quia qui in minus.",true,79505],["17\/Nov\/2023 07:11:33","18\/Nov\/2023 01:11:34","Eum excepturi assumenda qui et id repudiandae omnis.",true,65581],["18\/Nov\/2023 01:11:34","18\/Nov\/2023 19:11:04","Rerum voluptas dolorem qui nisi autem.",true,64530],["18\/Nov\/2023 19:11:04","18\/Nov\/2023 21:11:25","Rerum voluptas omnis delectus non qui rem ut in.",true,8421],["18\/Nov\/2023 21:11:25","19\/Nov\/2023 18:11:55","Sed adipisci qui repudiandae amet velit.",false,74370],["19\/Nov\/2023 18:11:55","20\/Nov\/2023 16:11:53","Deserunt ut nobis distinctio saepe.",false,79078],["20\/Nov\/2023 16:11:53","21\/Nov\/2023 14:11:21","Et distinctio quisquam repellat perferendis quibusdam est.",true,78628],["21\/Nov\/2023 14:11:21","21\/Nov\/2023 23:11:22","Deserunt eos voluptatibus harum sunt.",false,30541],["21\/Nov\/2023 23:11:22","22\/Nov\/2023 00:11:03","Nemo harum dolorem recusandae sequi.",false,4481],["22\/Nov\/2023 00:11:03","22\/Nov\/2023 12:11:03","Vitae in impedit et aut a.",false,42660],["22\/Nov\/2023 12:11:03","23\/Nov\/2023 04:11:33","Aliquam laudantium dolorem occaecati sit.",true,57090],["23\/Nov\/2023 04:11:33","23\/Nov\/2023 07:11:45","Fugit delectus quia cupiditate maxime illum et amet.",true,11352],["23\/Nov\/2023 07:11:45","24\/Nov\/2023 03:11:10","Eos quidem debitis ullam omnis repudiandae.",false,69925],["24\/Nov\/2023 03:11:10","24\/Nov\/2023 09:11:44","Esse officia maxime animi rerum doloribus.",false,22894],["24\/Nov\/2023 09:11:44","25\/Nov\/2023 09:11:45","Aut in culpa ab dolores ab necessitatibus debitis ratione.",false,85921],["25\/Nov\/2023 09:11:45","26\/Nov\/2023 01:11:30","Beatae ullam ut veritatis nostrum et ipsum.",true,56025],["26\/Nov\/2023 01:11:30","26\/Nov\/2023 10:11:53","Aut quis eveniet earum unde autem enim.",false,34583],["26\/Nov\/2023 10:11:53","26\/Nov\/2023 21:11:16","Est aut aut distinctio delectus.",false,38303],["26\/Nov\/2023 21:11:16","26\/Nov\/2023 22:11:14","Possimus sit omnis quia est unde corporis voluptatem autem.",false,4798]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},{"number":"0008","description":"Eum saepe dolores consequatur impedit deleniti vitae. Consectetur occaecati voluptatum maxime voluptate omnis vel cum. Possimus optio neque ducimus fuga a.","duration":0,"rate":"$85.00","rate_raw":"85.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Tiara Pacocha","number":"0002","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$130.00","task_rate_raw":"130.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Beatae aut suscipit ipsum non.","budgeted_hours":668,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},"time_log":[["16\/Nov\/2023 08:11:28","17\/Nov\/2023 00:11:28","Odio et ut velit magni consequatur et quia.",true,57660],["17\/Nov\/2023 01:11:28","17\/Nov\/2023 13:11:51","Fugiat similique rem distinctio non.",false,44963],["17\/Nov\/2023 13:11:51","18\/Nov\/2023 04:11:58","Sed laborum non debitis.",true,54067],["18\/Nov\/2023 04:11:58","18\/Nov\/2023 10:11:53","Voluptatibus qui recusandae saepe ut non aut corporis.",false,21535],["18\/Nov\/2023 10:11:53","18\/Nov\/2023 15:11:34","Et sequi sunt eos dolorem reiciendis natus.",false,18161],["18\/Nov\/2023 15:11:34","19\/Nov\/2023 11:11:51","Excepturi assumenda iste quos eum similique atque commodi.",true,69437]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},{"number":"0009","description":"Tempora minima dolorum est ut. Necessitatibus rerum dolorem voluptas est. Nulla saepe laboriosam dolorem placeat illum et sequi. Saepe laudantium optio laborum qui doloremque.","duration":0,"rate":"$65.00","rate_raw":"65.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":[],"time_log":[["16\/Nov\/2023 08:11:28","17\/Nov\/2023 06:11:10","Perspiciatis blanditiis atque sed ratione consequatur.",true,78102],["17\/Nov\/2023 06:11:10","17\/Nov\/2023 09:11:09","Omnis repellat quisquam quae aperiam.",true,10439],["17\/Nov\/2023 09:11:09","17\/Nov\/2023 23:11:30","Delectus ipsam harum est.",false,49761],["17\/Nov\/2023 23:11:30","18\/Nov\/2023 18:11:36","Ad veniam eos et et vitae iure.",true,69726],["18\/Nov\/2023 19:11:36","18\/Nov\/2023 22:11:17","Libero commodi animi accusantium voluptatem quis quia mollitia.",false,11621],["18\/Nov\/2023 22:11:17","19\/Nov\/2023 20:11:33","Eum eos repudiandae eligendi non.",false,81016],["19\/Nov\/2023 20:11:33","20\/Nov\/2023 05:11:53","Voluptatem voluptatem ea necessitatibus ullam numquam.",true,32240],["20\/Nov\/2023 06:11:53","21\/Nov\/2023 01:11:23","Sunt aliquid odio quas rerum.",true,71250],["21\/Nov\/2023 01:11:23","21\/Nov\/2023 06:11:11","Vel repudiandae et earum id.",false,16728],["21\/Nov\/2023 06:11:11","22\/Nov\/2023 01:11:41","Aliquid ipsum et natus voluptatem dolorem dolorem quos.",true,68970],["22\/Nov\/2023 01:11:41","23\/Nov\/2023 01:11:36","Perferendis ipsam nisi iste perspiciatis ullam incidunt.",true,83395],["23\/Nov\/2023 01:11:36","23\/Nov\/2023 19:11:50","Et voluptas laborum sit doloribus.",false,67334],["23\/Nov\/2023 19:11:50","24\/Nov\/2023 20:11:20","Nihil reiciendis aut sequi non magnam enim maiores.",true,86850],["24\/Nov\/2023 20:11:20","25\/Nov\/2023 09:11:37","Explicabo et dolorum aut nemo.",true,49697],["25\/Nov\/2023 09:11:37","25\/Nov\/2023 17:11:07","Libero voluptas reprehenderit quas tempore qui facilis nam neque.",false,25890],["25\/Nov\/2023 17:11:07","25\/Nov\/2023 22:11:51","Ad illum necessitatibus repellendus enim eum placeat.",false,18464],["25\/Nov\/2023 22:11:51","26\/Nov\/2023 01:11:53","Fugit quisquam id saepe enim eos enim.",true,12542]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Swaniawski, Toy and Runolfsdottir","balance":"0.000000","payment_balance":"0.000000","credit_balance":"0.000000"}},{"number":"0010","description":"Consequatur doloribus quo enim voluptatem aut. Laboriosam inventore iure aut enim maxime dolores incidunt. Incidunt officiis delectus et fugit beatae ex. Perspiciatis asperiores qui voluptas et eius rerum.","duration":0,"rate":"$18.00","rate_raw":"18.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Mattie Hahn I","number":"0003","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$125.00","task_rate_raw":"125.000000","due_date":"20\/Nov\/2023","private_notes":"","public_notes":"Aliquid qui ea rem omnis voluptas quam et ut.","budgeted_hours":334,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},"time_log":[["16\/Nov\/2023 08:11:28","17\/Nov\/2023 08:11:14","Eos cum voluptate eos dolor cupiditate eius.",false,85666],["17\/Nov\/2023 08:11:14","17\/Nov\/2023 10:11:14","Sed ea et culpa optio debitis cum qui.",true,5880],["17\/Nov\/2023 10:11:14","17\/Nov\/2023 12:11:57","Accusamus perspiciatis velit velit cupiditate laboriosam rerum.",false,7363],["17\/Nov\/2023 12:11:57","17\/Nov\/2023 18:11:38","Recusandae id est nobis sit.",true,21401],["17\/Nov\/2023 18:11:38","18\/Nov\/2023 08:11:03","Quia tempora saepe qui non voluptatem blanditiis autem.",true,50305],["18\/Nov\/2023 08:11:03","18\/Nov\/2023 10:11:44","Doloremque error quia qui atque quos laboriosam.",true,7001],["18\/Nov\/2023 10:11:44","18\/Nov\/2023 17:11:01","Saepe accusamus aut earum aut sed expedita in.",false,23777],["18\/Nov\/2023 17:11:01","19\/Nov\/2023 07:11:05","A dolorem nisi inventore.",true,49384],["19\/Nov\/2023 07:11:05","19\/Nov\/2023 23:11:47","In delectus alias accusantium cum cupiditate.",false,59442],["19\/Nov\/2023 23:11:47","20\/Nov\/2023 18:11:01","Assumenda ut tempora expedita non libero excepturi minus qui.",false,68354],["20\/Nov\/2023 18:11:01","21\/Nov\/2023 08:11:56","Reiciendis nihil qui maiores provident ut dignissimos id.",true,50515],["21\/Nov\/2023 09:11:56","21\/Nov\/2023 23:11:55","Ab et magnam similique velit est.",false,52379],["21\/Nov\/2023 23:11:55","22\/Nov\/2023 05:11:07","Iusto quia pariatur facilis voluptatem ducimus architecto expedita.",true,22512],["22\/Nov\/2023 06:11:07","22\/Nov\/2023 16:11:02","Hic distinctio molestiae voluptas sit.",true,36595],["22\/Nov\/2023 16:11:02","22\/Nov\/2023 17:11:29","Libero amet similique quaerat dolor quia.",true,3687],["22\/Nov\/2023 17:11:29","23\/Nov\/2023 16:11:59","Quo error sed ad nam.",true,84690],["23\/Nov\/2023 16:11:59","24\/Nov\/2023 05:11:43","Sunt aut odio laborum assumenda illo reiciendis.",true,44024],["24\/Nov\/2023 05:11:43","24\/Nov\/2023 17:11:43","Repellat soluta delectus aut officia ut quia voluptas.",false,43440],["24\/Nov\/2023 17:11:43","25\/Nov\/2023 06:11:39","Quo animi accusantium inventore sunt tenetur.",true,48176]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},{"number":"0011","description":"Exercitationem atque qui id distinctio doloremque rem laboriosam. Quis enim fuga enim explicabo sed deserunt. Earum cupiditate corrupti enim repellendus impedit aut ducimus.","duration":0,"rate":"$128.00","rate_raw":"128.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Mattie Hahn I","number":"0003","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$125.00","task_rate_raw":"125.000000","due_date":"20\/Nov\/2023","private_notes":"","public_notes":"Aliquid qui ea rem omnis voluptas quam et ut.","budgeted_hours":334,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},"time_log":[["16\/Nov\/2023 08:11:28","16\/Nov\/2023 17:11:23","Voluptatum dolores aspernatur accusantium dolorum illum consectetur.",true,30475],["16\/Nov\/2023 17:11:23","17\/Nov\/2023 14:11:33","Fugiat consectetur laudantium tempora non.",false,76570],["17\/Nov\/2023 14:11:33","17\/Nov\/2023 20:11:53","Eum molestiae unde quos vel consectetur.",true,19880],["17\/Nov\/2023 20:11:53","18\/Nov\/2023 13:11:21","Quia quam consequatur illo quam qui consequatur suscipit.",true,61468],["18\/Nov\/2023 13:11:21","18\/Nov\/2023 21:11:33","Quaerat repellendus dolores architecto ut quis.",true,28572],["18\/Nov\/2023 21:11:33","18\/Nov\/2023 23:11:04","Quasi non incidunt magnam eveniet.",false,5911],["18\/Nov\/2023 23:11:04","19\/Nov\/2023 08:11:48","Et qui laborum tempora voluptatem assumenda deleniti voluptates.",false,31784],["19\/Nov\/2023 08:11:48","19\/Nov\/2023 18:11:52","Illum incidunt sed est debitis.",false,37924],["19\/Nov\/2023 18:11:52","20\/Nov\/2023 07:11:47","Autem et consequatur magni quia cum.",false,45535],["20\/Nov\/2023 07:11:47","20\/Nov\/2023 19:11:13","Soluta rerum non necessitatibus nulla placeat aut iusto.",false,44306],["20\/Nov\/2023 20:11:13","21\/Nov\/2023 08:11:14","Enim ducimus rerum nihil et eum.",true,45301],["21\/Nov\/2023 08:11:14","21\/Nov\/2023 11:11:11","Mollitia voluptate vel sit accusantium id nobis eum.",false,10857],["21\/Nov\/2023 11:11:11","21\/Nov\/2023 18:11:16","Officiis magnam et expedita illum autem.",false,23345],["21\/Nov\/2023 18:11:16","22\/Nov\/2023 16:11:30","Laudantium corporis inventore qui expedita sapiente deleniti.",false,79634],["22\/Nov\/2023 16:11:30","22\/Nov\/2023 20:11:51","Natus cupiditate quos ratione itaque ut soluta quibusdam placeat.",true,15441],["22\/Nov\/2023 20:11:51","23\/Nov\/2023 12:11:07","Ipsum reiciendis totam blanditiis rem itaque sed voluptatem.",true,57196],["23\/Nov\/2023 12:11:07","23\/Nov\/2023 18:11:45","Voluptates consequatur veritatis inventore et fuga.",false,20378],["23\/Nov\/2023 18:11:45","24\/Nov\/2023 16:11:32","Qui nihil autem sit consequuntur maiores tenetur unde.",true,77027]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"In progress","client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},{"number":"0012","description":"Harum nobis adipisci autem et fugiat. Quod doloribus illo ex laudantium. Quaerat totam voluptas eum soluta aut et. Aspernatur illum quis amet ab doloremque corrupti magnam. Culpa amet id eveniet repudiandae dolor quidem in consequatur.","duration":0,"rate":"$81.00","rate_raw":"81.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Mattie Hahn I","number":"0003","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$125.00","task_rate_raw":"125.000000","due_date":"20\/Nov\/2023","private_notes":"","public_notes":"Aliquid qui ea rem omnis voluptas quam et ut.","budgeted_hours":334,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},"time_log":[["16\/Nov\/2023 08:11:28","16\/Nov\/2023 19:11:44","In totam ut quae.",false,38836],["16\/Nov\/2023 19:11:44","17\/Nov\/2023 11:11:25","Delectus itaque iusto velit labore pariatur culpa et.",false,57401],["17\/Nov\/2023 11:11:25","18\/Nov\/2023 05:11:28","Cupiditate eum ad voluptatem dolorem cum.",false,63183],["18\/Nov\/2023 05:11:28","18\/Nov\/2023 08:11:19","Voluptates aliquam dolorem est voluptatem.",true,9951],["18\/Nov\/2023 08:11:19","18\/Nov\/2023 23:11:10","Facilis sit exercitationem ullam sit id ut quibusdam enim.",true,54591],["18\/Nov\/2023 23:11:10","19\/Nov\/2023 09:11:05","Numquam rerum ut voluptatem dolor harum.",true,36415],["19\/Nov\/2023 09:11:05","20\/Nov\/2023 07:11:55","Qui et id labore deleniti.",true,77210],["20\/Nov\/2023 07:11:55","21\/Nov\/2023 06:11:44","Aut at ipsam veritatis nulla ea amet dolor.",true,82849],["21\/Nov\/2023 06:11:44","21\/Nov\/2023 11:11:26","Quia fugiat aut ratione est non neque distinctio.",true,18462],["21\/Nov\/2023 11:11:26","21\/Nov\/2023 14:11:50","Atque nemo nesciunt voluptates debitis magnam minima.",true,10824],["21\/Nov\/2023 14:11:50","21\/Nov\/2023 21:11:16","Est doloremque accusantium quos.",false,24446],["21\/Nov\/2023 21:11:16","22\/Nov\/2023 20:11:27","Blanditiis ut nisi nisi.",false,81071],["22\/Nov\/2023 20:11:27","23\/Nov\/2023 00:11:29","Quo error vel temporibus debitis sunt.",false,17282],["23\/Nov\/2023 01:11:29","23\/Nov\/2023 06:11:03","Ducimus at quibusdam voluptatem numquam.",false,20914],["23\/Nov\/2023 06:11:03","24\/Nov\/2023 01:11:18","Suscipit cupiditate soluta beatae.",false,65835]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","client":{"name":"Gaylord-Barrows","balance":"9111.420000","payment_balance":"0.000000","credit_balance":"1402.640000"}},{"number":"0013","description":"Voluptatem similique incidunt quam saepe. Ea sunt in molestiae qui.","duration":0,"rate":"$65.00","rate_raw":"65.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":[],"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 13:11:05","Nihil assumenda animi qui vel amet tempora.",true,18036],["16\/Nov\/2023 14:11:05","17\/Nov\/2023 00:11:08","Est qui sit necessitatibus est.",false,38343],["17\/Nov\/2023 00:11:08","17\/Nov\/2023 02:11:31","Sunt ad aut nobis in illum esse.",false,5183],["17\/Nov\/2023 02:11:31","17\/Nov\/2023 13:11:20","Temporibus ad sit sit est occaecati.",false,41809],["17\/Nov\/2023 14:11:20","17\/Nov\/2023 14:11:26","Ipsum dolorem quam nisi ut sunt deleniti.",false,1266],["17\/Nov\/2023 14:11:26","18\/Nov\/2023 10:11:40","Deserunt doloremque est cum sunt rem nesciunt ad.",false,72254],["18\/Nov\/2023 10:11:40","19\/Nov\/2023 00:11:07","Tempore molestiae et ratione fuga sit similique.",true,49827],["19\/Nov\/2023 00:11:07","19\/Nov\/2023 04:11:35","Ratione excepturi delectus voluptatem hic eligendi.",true,14668],["19\/Nov\/2023 04:11:35","19\/Nov\/2023 13:11:58","Quidem consequatur doloribus mollitia ducimus sit distinctio.",false,33143],["19\/Nov\/2023 13:11:58","19\/Nov\/2023 14:11:50","Repellat dolorum ut est quia cumque et.",true,2452],["19\/Nov\/2023 14:11:50","19\/Nov\/2023 20:11:33","Reiciendis omnis ex cupiditate excepturi aut.",true,21523],["19\/Nov\/2023 20:11:33","20\/Nov\/2023 06:11:18","Perspiciatis id quis aut.",true,34965],["20\/Nov\/2023 06:11:18","21\/Nov\/2023 03:11:46","Aliquam porro sequi a fugiat facilis id.",false,75748],["21\/Nov\/2023 03:11:46","21\/Nov\/2023 07:11:17","Iste quis quisquam sunt.",false,12931],["21\/Nov\/2023 07:11:17","21\/Nov\/2023 15:11:35","Voluptatem alias ducimus doloremque eius ipsam.",true,28758],["21\/Nov\/2023 15:11:35","22\/Nov\/2023 00:11:51","Vero rerum in dolores quia vel explicabo repellendus.",true,33856],["22\/Nov\/2023 00:11:51","22\/Nov\/2023 21:11:23","Modi qui odit totam esse.",true,72872],["22\/Nov\/2023 21:11:23","23\/Nov\/2023 03:11:07","Aut dolores accusantium eos velit itaque voluptates libero architecto.",true,21524],["23\/Nov\/2023 03:11:07","23\/Nov\/2023 10:11:47","Repellat laborum ut ipsum vel animi aut dolorem.",true,26500]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","client":{"name":"cypress","balance":"6850.870000","payment_balance":"0.000000","credit_balance":"-7.650000"}},{"number":"0014","description":"Quo magnam reiciendis fuga consectetur. Odio molestias dolorum dolorem incidunt. Officia aut repellendus eaque sed. At officiis fugiat aspernatur debitis tempore. Fugiat necessitatibus dicta ea quo deserunt tempora perspiciatis.","duration":0,"rate":"$59.00","rate_raw":"59.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Cristal Little","number":"0004","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$6.00","task_rate_raw":"6.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Culpa ut fugit aut doloribus.","budgeted_hours":106,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 18:11:10","Rerum molestiae et iure at enim ut beatae voluptatem.",false,33581],["16\/Nov\/2023 18:11:10","16\/Nov\/2023 23:11:46","Excepturi fugiat cupiditate velit consectetur vel recusandae.",true,19536],["16\/Nov\/2023 23:11:46","17\/Nov\/2023 06:11:32","Qui quas ipsa quia voluptate aperiam molestiae.",true,23326],["17\/Nov\/2023 06:11:32","17\/Nov\/2023 09:11:36","Fuga est ipsum minus non molestiae.",false,10864],["17\/Nov\/2023 09:11:36","17\/Nov\/2023 20:11:05","Id quo et numquam ab.",true,38369],["17\/Nov\/2023 20:11:05","18\/Nov\/2023 16:11:10","Suscipit voluptatem ipsam aliquid.",false,72485]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0015","description":"Eaque quis veritatis vel deleniti et et laboriosam. Qui sit porro iure aut sequi sit. Ea dolores possimus quam.","duration":0,"rate":"$107.00","rate_raw":"107.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Cristal Little","number":"0004","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$6.00","task_rate_raw":"6.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Culpa ut fugit aut doloribus.","budgeted_hours":106,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 21:11:22","Tenetur tenetur temporibus illum qui modi vero.",true,46493],["16\/Nov\/2023 21:11:22","17\/Nov\/2023 21:11:51","A ab ut molestiae aut autem eos id quisquam.",false,85289],["17\/Nov\/2023 21:11:51","18\/Nov\/2023 10:11:38","Quia quia dolorem provident et occaecati.",false,46127],["18\/Nov\/2023 10:11:38","19\/Nov\/2023 09:11:26","Eaque exercitationem voluptatem distinctio distinctio.",true,83208],["19\/Nov\/2023 09:11:26","19\/Nov\/2023 19:11:05","Iure et enim ipsum nostrum perferendis minima magni.",true,36459],["19\/Nov\/2023 20:11:05","20\/Nov\/2023 05:11:07","Aperiam recusandae dolorum culpa.",true,34682],["20\/Nov\/2023 05:11:07","20\/Nov\/2023 12:11:56","Aspernatur saepe distinctio ea quidem dolores saepe praesentium qui.",false,22669],["20\/Nov\/2023 12:11:56","21\/Nov\/2023 11:11:28","Omnis et illum aut perspiciatis.",true,84752],["21\/Nov\/2023 11:11:28","22\/Nov\/2023 02:11:09","Aut corporis et eos quia quis velit.",false,52961],["22\/Nov\/2023 02:11:09","22\/Nov\/2023 16:11:00","Voluptates sit optio quo voluptas tenetur voluptatibus exercitationem delectus.",false,51831],["22\/Nov\/2023 17:11:00","22\/Nov\/2023 20:11:49","Alias sed dolore magni iure modi amet quibusdam.",false,11689],["22\/Nov\/2023 20:11:49","23\/Nov\/2023 07:11:40","Et maxime aut id culpa est velit nisi quo.",true,38511],["23\/Nov\/2023 07:11:40","23\/Nov\/2023 12:11:18","Non voluptas qui quaerat vero aliquam.",true,18878],["23\/Nov\/2023 12:11:18","24\/Nov\/2023 07:11:31","Corporis eos earum et reiciendis est iusto sunt.",true,68533],["24\/Nov\/2023 07:11:31","24\/Nov\/2023 11:11:54","Iste qui nemo quia quaerat praesentium sint sit deleniti.",true,13823],["24\/Nov\/2023 11:11:54","25\/Nov\/2023 11:11:09","Numquam quia iusto at sed aut.",true,85575],["25\/Nov\/2023 11:11:09","26\/Nov\/2023 07:11:36","Rerum dolor placeat voluptate cupiditate deserunt eaque totam unde.",false,70827],["26\/Nov\/2023 07:11:36","27\/Nov\/2023 02:11:26","Alias cum quia in minus.",false,70730],["27\/Nov\/2023 02:11:26","27\/Nov\/2023 23:11:53","Ipsam quod error officia ipsum ut aspernatur impedit.",false,73887]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"In progress","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0016","description":"Quos consequuntur commodi dolor eos exercitationem. Reprehenderit velit minima suscipit voluptates natus.","duration":0,"rate":"$109.00","rate_raw":"109.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Cristal Little","number":"0004","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$6.00","task_rate_raw":"6.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Culpa ut fugit aut doloribus.","budgeted_hours":106,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 10:11:58","Reiciendis autem molestiae recusandae voluptatem doloribus culpa.",true,5909],["16\/Nov\/2023 10:11:58","16\/Nov\/2023 10:11:05","Officiis hic dignissimos laboriosam saepe tempore nemo voluptatibus.",true,487],["16\/Nov\/2023 10:11:05","17\/Nov\/2023 09:11:32","Maiores laboriosam sunt vel.",true,79707],["17\/Nov\/2023 09:11:32","17\/Nov\/2023 14:11:59","Nesciunt tempore aut animi placeat alias iusto occaecati.",true,17787],["17\/Nov\/2023 14:11:59","17\/Nov\/2023 15:11:42","Ratione aliquam doloremque esse nam necessitatibus numquam recusandae.",true,4483],["17\/Nov\/2023 15:11:42","18\/Nov\/2023 10:11:24","Id sed dolores et laborum adipisci.",false,67002],["18\/Nov\/2023 10:11:24","18\/Nov\/2023 10:11:44","Minus aut quo illum libero non in dolorem.",false,2360],["18\/Nov\/2023 10:11:44","18\/Nov\/2023 19:11:04","Sint incidunt tempora magnam explicabo vitae.",false,31100],["18\/Nov\/2023 19:11:04","19\/Nov\/2023 13:11:27","Ratione id maxime sequi maiores et hic.",true,64343],["19\/Nov\/2023 13:11:27","20\/Nov\/2023 09:11:35","Incidunt similique perferendis quidem voluptas.",true,72668],["20\/Nov\/2023 09:11:35","21\/Nov\/2023 02:11:18","Consequuntur molestiae incidunt nihil tenetur repellat et.",true,58723],["21\/Nov\/2023 02:11:18","21\/Nov\/2023 21:11:06","Et repellendus sunt error perspiciatis quisquam.",true,70848],["21\/Nov\/2023 22:11:06","22\/Nov\/2023 03:11:52","Facere nemo ipsum labore autem ea facere amet.",true,19066],["22\/Nov\/2023 03:11:52","22\/Nov\/2023 17:11:45","Quis voluptas error inventore ducimus.",false,49433],["22\/Nov\/2023 17:11:45","23\/Nov\/2023 13:11:51","Et qui non cupiditate non qui doloribus.",false,74286],["23\/Nov\/2023 13:11:51","23\/Nov\/2023 19:11:12","Dolores a adipisci quia deleniti.",false,19041],["23\/Nov\/2023 19:11:12","24\/Nov\/2023 16:11:09","Cumque ipsum consequatur autem ipsa sed.",true,75417],["24\/Nov\/2023 16:11:09","24\/Nov\/2023 20:11:39","Repudiandae adipisci quaerat repudiandae.",true,15390]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0017","description":"Debitis laudantium quod est provident voluptate eos veniam. Pariatur quis ullam sequi totam. Necessitatibus assumenda nam dolorum.","duration":0,"rate":"$105.00","rate_raw":"105.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Cristal Little","number":"0004","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$6.00","task_rate_raw":"6.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Culpa ut fugit aut doloribus.","budgeted_hours":106,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 09:11:04","Officia error qui ut voluptas ut.",false,2315],["16\/Nov\/2023 09:11:04","17\/Nov\/2023 02:11:43","Dignissimos dolorem quod a ut ut.",false,59739],["17\/Nov\/2023 02:11:43","17\/Nov\/2023 09:11:32","Nisi saepe ea et nesciunt ipsam sapiente.",true,25789],["17\/Nov\/2023 09:11:32","17\/Nov\/2023 16:11:30","Cum ea quia ratione reprehenderit id aliquam.",false,25738],["17\/Nov\/2023 16:11:30","18\/Nov\/2023 13:11:43","Praesentium ipsam laboriosam sapiente et iste.",true,75013],["18\/Nov\/2023 13:11:43","18\/Nov\/2023 15:11:29","Eos voluptas nam error aut est.",false,6466],["18\/Nov\/2023 15:11:29","19\/Nov\/2023 14:11:39","Commodi perspiciatis vel quo sed et doloremque.",false,83650],["19\/Nov\/2023 14:11:39","20\/Nov\/2023 11:11:40","Velit mollitia nihil et deleniti reiciendis voluptatum.",true,73321],["20\/Nov\/2023 11:11:40","21\/Nov\/2023 07:11:35","Tenetur dolores adipisci ea praesentium quia vitae.",true,72175]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0018","description":"Ut dolore corrupti eius esse quia nemo necessitatibus. Aut qui asperiores aut consequatur rerum autem sed aspernatur. Quo quasi corrupti sit ipsam. Eum et id et sint.","duration":0,"rate":"$104.00","rate_raw":"104.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":[],"time_log":[["16\/Nov\/2023 08:11:29","17\/Nov\/2023 04:11:31","Officiis aut tenetur provident id reprehenderit aut iste.",false,69482],["17\/Nov\/2023 04:11:31","17\/Nov\/2023 20:11:15","Culpa sed impedit facere perferendis voluptatibus unde.",true,59264],["17\/Nov\/2023 20:11:15","17\/Nov\/2023 21:11:27","Laborum voluptatem aut tenetur vitae magnam tenetur.",false,2052],["17\/Nov\/2023 21:11:27","18\/Nov\/2023 01:11:23","Inventore molestias dolore perferendis perspiciatis voluptates.",true,15836],["18\/Nov\/2023 02:11:23","18\/Nov\/2023 15:11:32","Itaque soluta veniam atque nam quaerat.",false,49389],["18\/Nov\/2023 15:11:32","19\/Nov\/2023 05:11:55","Corrupti hic asperiores temporibus dicta.",false,50123],["19\/Nov\/2023 05:11:55","19\/Nov\/2023 14:11:30","Ipsum dolor quia occaecati.",true,31775]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"In progress","client":{"name":"Kutch-Swaniawski","balance":"14698.790000","payment_balance":"0.000000","credit_balance":"0.000000"}},{"number":"0019","description":"Corporis facilis quidem minima cum. Non earum dolor assumenda sapiente. Corporis cum architecto explicabo debitis distinctio asperiores.","duration":0,"rate":"$33.00","rate_raw":"33.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Marielle Bartoletti","number":"0005","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$68.00","task_rate_raw":"68.000000","due_date":"17\/Nov\/2023","private_notes":"","public_notes":"Laborum repudiandae debitis voluptatem minima.","budgeted_hours":829,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","17\/Nov\/2023 00:11:10","Inventore atque non ad odio ducimus incidunt expedita.",false,56501],["17\/Nov\/2023 00:11:10","17\/Nov\/2023 06:11:24","Et sed voluptatibus saepe.",true,20894],["17\/Nov\/2023 06:11:24","17\/Nov\/2023 15:11:50","Deserunt quo cumque beatae voluptatem impedit.",true,31346],["17\/Nov\/2023 15:11:50","18\/Nov\/2023 11:11:44","Dolores esse reiciendis nihil magni.",true,72474],["18\/Nov\/2023 11:11:44","18\/Nov\/2023 23:11:27","Laborum aut ea aut rerum explicabo consequatur.",false,44203],["18\/Nov\/2023 23:11:27","19\/Nov\/2023 01:11:52","Enim aspernatur fugiat recusandae.",true,6805],["19\/Nov\/2023 01:11:52","19\/Nov\/2023 16:11:14","Repudiandae eligendi culpa aliquid facilis.",false,51262],["19\/Nov\/2023 16:11:14","20\/Nov\/2023 07:11:03","Sit nihil consequuntur error et qui.",false,55729],["20\/Nov\/2023 07:11:03","21\/Nov\/2023 05:11:52","Doloremque consequuntur iure voluptatem similique debitis consequatur.",true,79009],["21\/Nov\/2023 05:11:52","21\/Nov\/2023 16:11:02","Voluptas deserunt placeat nam aliquam dolor nulla et.",true,37750]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0020","description":"Modi dolore ipsam cupiditate. Consequatur eum rerum dolore non ullam placeat ex quia. Ipsum aliquam hic est vel molestiae libero aliquid.","duration":0,"rate":"$59.00","rate_raw":"59.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Marielle Bartoletti","number":"0005","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$68.00","task_rate_raw":"68.000000","due_date":"17\/Nov\/2023","private_notes":"","public_notes":"Laborum repudiandae debitis voluptatem minima.","budgeted_hours":829,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 13:11:42","Sunt tempora corporis ut ipsam culpa ea iste.",true,16273],["16\/Nov\/2023 13:11:42","16\/Nov\/2023 23:11:22","Debitis ducimus perferendis sed et non est in.",true,35860],["16\/Nov\/2023 23:11:22","17\/Nov\/2023 14:11:39","Nihil quia placeat et ut alias doloremque.",false,53537],["17\/Nov\/2023 14:11:39","18\/Nov\/2023 05:11:17","Veniam velit corrupti recusandae qui voluptate id.",false,53018],["18\/Nov\/2023 05:11:17","18\/Nov\/2023 21:11:47","Repellendus error voluptas assumenda.",true,57150]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0021","description":"Voluptates accusantium corporis eum dolorum aut. Reprehenderit asperiores perspiciatis quis voluptas eum quidem corporis. Id tempore est quia iusto. Dolorum asperiores veniam quis.","duration":0,"rate":"$146.00","rate_raw":"146.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Marielle Bartoletti","number":"0005","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$68.00","task_rate_raw":"68.000000","due_date":"17\/Nov\/2023","private_notes":"","public_notes":"Laborum repudiandae debitis voluptatem minima.","budgeted_hours":829,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 21:11:00","Fugit ratione facilis quibusdam sint ut.",false,44731],["16\/Nov\/2023 21:11:00","17\/Nov\/2023 01:11:57","Recusandae quasi tempora assumenda sed et.",true,14637],["17\/Nov\/2023 01:11:57","17\/Nov\/2023 02:11:21","Ratione consequatur reiciendis exercitationem accusamus.",true,3144],["17\/Nov\/2023 02:11:21","17\/Nov\/2023 03:11:04","Dignissimos velit et corporis ut ipsum.",true,3283],["17\/Nov\/2023 03:11:04","17\/Nov\/2023 14:11:33","Doloribus laborum neque accusantium.",false,38729],["17\/Nov\/2023 14:11:33","18\/Nov\/2023 12:11:44","Dolores tempora consectetur ipsum voluptatem ut maxime.",true,78371],["18\/Nov\/2023 12:11:44","19\/Nov\/2023 08:11:12","Aut vero inventore cum rem eius ratione sint.",false,72508]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"In progress","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},{"number":"0022","description":"Quos adipisci qui aliquam a asperiores. Eum adipisci et facere sunt at.","duration":0,"rate":"$16.00","rate_raw":"16.000000","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","date":"15\/Nov\/2023","project":{"name":"Marielle Bartoletti","number":"0005","created_at":"16\/Nov\/2023","updated_at":"16\/Nov\/2023","task_rate":"$68.00","task_rate_raw":"68.000000","due_date":"17\/Nov\/2023","private_notes":"","public_notes":"Laborum repudiandae debitis voluptatem minima.","budgeted_hours":829,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":0,"tasks":[],"client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}},"time_log":[["16\/Nov\/2023 08:11:29","16\/Nov\/2023 22:11:51","Nesciunt et iusto nulla quae.",false,48262],["16\/Nov\/2023 22:11:51","17\/Nov\/2023 14:11:00","Aut voluptas pariatur iste soluta blanditiis dolor nam a.",true,57909],["17\/Nov\/2023 14:11:00","18\/Nov\/2023 13:11:57","Minima consequatur ipsam rem ut dolor veniam.",true,80757],["18\/Nov\/2023 13:11:57","18\/Nov\/2023 16:11:42","Ea aperiam quis aspernatur consequatur omnis est accusamus ut.",true,10965],["18\/Nov\/2023 16:11:42","19\/Nov\/2023 05:11:28","Recusandae sed quasi est atque ea consequuntur.",false,48526],["19\/Nov\/2023 05:11:28","20\/Nov\/2023 04:11:39","Facilis veniam illo odio harum.",true,82091],["20\/Nov\/2023 04:11:39","20\/Nov\/2023 17:11:26","Molestiae sunt velit magnam iusto aut aut.",true,47087],["20\/Nov\/2023 17:11:26","21\/Nov\/2023 00:11:52","Non eos eum tempora voluptas aliquid.",false,22406],["21\/Nov\/2023 00:11:52","21\/Nov\/2023 19:11:58","Omnis impedit incidunt vero neque similique facilis magnam odio.",false,68586],["21\/Nov\/2023 19:11:58","22\/Nov\/2023 08:11:01","Tempora ea hic velit rerum.",false,47763],["22\/Nov\/2023 08:11:01","22\/Nov\/2023 19:11:22","Sit est a officiis eius corrupti ea numquam placeat.",false,39381],["22\/Nov\/2023 19:11:22","23\/Nov\/2023 09:11:19","Quia veritatis ad enim placeat totam itaque.",false,48117],["23\/Nov\/2023 09:11:19","23\/Nov\/2023 12:11:42","Dolor molestiae voluptatem et illo omnis et numquam.",true,12983],["23\/Nov\/2023 12:11:42","24\/Nov\/2023 03:11:09","Repellat reiciendis ea quia molestias unde recusandae earum.",false,52347],["24\/Nov\/2023 03:11:09","24\/Nov\/2023 21:11:27","Id consequuntur velit non rerum labore.",false,63678],["24\/Nov\/2023 21:11:27","25\/Nov\/2023 05:11:53","Cupiditate vel praesentium minima placeat.",true,28046],["25\/Nov\/2023 05:11:53","25\/Nov\/2023 15:11:12","Assumenda molestiae non aut enim.",true,35779]],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","client":{"name":"Little, Sauer and Moen","balance":"0.000000","payment_balance":"0.000000","credit_balance":"780.300000"}}]';
+ public string $task_data = '[{"number":"0001","description":"Reiciendis itaque molestias blanditiis cupiditate ea. Minus officiis natus itaque. Consectetur et aut veritatis quae ut esse ut. Accusantium dolore quaerat sit qui. Magni quia sunt corporis.","duration":149031,"rate":"$71.00","rate_raw":"71.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700470150,"end_date":"20\/Nov\/2023 08:11:10","description":"Assumenda nihil vitae odio voluptatem iusto ipsam repellendus.","billable":false,"duration":41684},{"start_date_raw":1700470450,"start_date":"20\/Nov\/2023 08:11:10","end_date_raw":1700485036,"end_date":"20\/Nov\/2023 12:11:16","description":"Adipisci amet optio tempore et.","billable":true,"duration":14586},{"start_date_raw":1700485336,"start_date":"20\/Nov\/2023 13:11:16","end_date_raw":1700572291,"end_date":"21\/Nov\/2023 13:11:31","description":"Ratione repellat saepe mollitia perspiciatis optio.","billable":false,"duration":86955},{"start_date_raw":1700572591,"start_date":"21\/Nov\/2023 13:11:31","end_date_raw":1700578397,"end_date":"21\/Nov\/2023 14:11:17","description":"Molestias perferendis ipsa odit id aut sunt.","billable":true,"duration":5806}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"}},{"number":"0002","description":"Et dolorem nihil qui quas asperiores nulla aut praesentium. Ea quasi porro facere eligendi. Et assumenda illum nostrum natus repellat eveniet. Sequi odio nulla perspiciatis doloremque.","duration":966982,"rate":"$76.00","rate_raw":"76.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Abel Moore","number":"0001","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$107.00","task_rate_raw":"107.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Omnis modi optio maxime ut inventore.","budgeted_hours":339,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":390,"tasks":[],"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700492035,"end_date":"20\/Nov\/2023 14:11:55","description":"Nihil voluptas et sint et.","billable":true,"duration":63569},{"start_date_raw":1700492335,"start_date":"20\/Nov\/2023 14:11:55","end_date_raw":1700554011,"end_date":"21\/Nov\/2023 08:11:51","description":"Aut consequuntur aliquam earum aut reiciendis.","billable":false,"duration":61676},{"start_date_raw":1700554311,"start_date":"21\/Nov\/2023 08:11:51","end_date_raw":1700586651,"end_date":"21\/Nov\/2023 17:11:51","description":"Occaecati consectetur temporibus neque rerum sed rem iure.","billable":true,"duration":32340},{"start_date_raw":1700586951,"start_date":"21\/Nov\/2023 17:11:51","end_date_raw":1700644903,"end_date":"22\/Nov\/2023 09:11:43","description":"Ducimus voluptate aliquid aliquam nobis.","billable":true,"duration":57952},{"start_date_raw":1700645203,"start_date":"22\/Nov\/2023 09:11:43","end_date_raw":1700724132,"end_date":"23\/Nov\/2023 07:11:12","description":"Non ipsam consequatur voluptatem illum.","billable":true,"duration":78929},{"start_date_raw":1700724432,"start_date":"23\/Nov\/2023 07:11:12","end_date_raw":1700790596,"end_date":"24\/Nov\/2023 01:11:56","description":"Aspernatur quia voluptate molestias non.","billable":false,"duration":66164},{"start_date_raw":1700790896,"start_date":"24\/Nov\/2023 01:11:56","end_date_raw":1700812808,"end_date":"24\/Nov\/2023 08:11:08","description":"Sed quod omnis officiis asperiores natus facere minus nemo.","billable":false,"duration":21912},{"start_date_raw":1700813108,"start_date":"24\/Nov\/2023 08:11:08","end_date_raw":1700865275,"end_date":"24\/Nov\/2023 22:11:35","description":"Tenetur quaerat ea magni placeat.","billable":false,"duration":52167},{"start_date_raw":1700865575,"start_date":"24\/Nov\/2023 22:11:35","end_date_raw":1700888516,"end_date":"25\/Nov\/2023 05:11:56","description":"Sequi dolor laborum deserunt rerum.","billable":true,"duration":22941},{"start_date_raw":1700888816,"start_date":"25\/Nov\/2023 05:11:56","end_date_raw":1700933259,"end_date":"25\/Nov\/2023 17:11:39","description":"Est qui velit ipsum et nesciunt qui ut.","billable":true,"duration":44443},{"start_date_raw":1700933559,"start_date":"25\/Nov\/2023 17:11:39","end_date_raw":1700979107,"end_date":"26\/Nov\/2023 06:11:47","description":"Sint et quo quo.","billable":false,"duration":45548},{"start_date_raw":1700979407,"start_date":"26\/Nov\/2023 06:11:47","end_date_raw":1701002669,"end_date":"26\/Nov\/2023 12:11:29","description":"Omnis unde sit similique dolor fugit totam.","billable":true,"duration":23262},{"start_date_raw":1701002969,"start_date":"26\/Nov\/2023 12:11:29","end_date_raw":1701071339,"end_date":"27\/Nov\/2023 07:11:59","description":"Ducimus qui voluptas accusamus.","billable":true,"duration":68370},{"start_date_raw":1701071639,"start_date":"27\/Nov\/2023 07:11:59","end_date_raw":1701100825,"end_date":"27\/Nov\/2023 16:11:25","description":"Soluta sit non nobis ab et ad libero sint.","billable":false,"duration":29186},{"start_date_raw":1701101125,"start_date":"27\/Nov\/2023 16:11:25","end_date_raw":1701157799,"end_date":"28\/Nov\/2023 07:11:59","description":"Cumque dignissimos error qui ut.","billable":true,"duration":56674},{"start_date_raw":1701158099,"start_date":"28\/Nov\/2023 07:11:59","end_date_raw":1701214020,"end_date":"28\/Nov\/2023 23:11:00","description":"Molestias omnis aliquid voluptatem cupiditate ut.","billable":true,"duration":55921},{"start_date_raw":1701214320,"start_date":"28\/Nov\/2023 23:11:00","end_date_raw":1701286375,"end_date":"29\/Nov\/2023 19:11:55","description":"Distinctio commodi est ab.","billable":true,"duration":72055},{"start_date_raw":1701286675,"start_date":"29\/Nov\/2023 19:11:55","end_date_raw":1701330081,"end_date":"30\/Nov\/2023 07:11:21","description":"Nisi dolores omnis veritatis.","billable":false,"duration":43406},{"start_date_raw":1701330381,"start_date":"30\/Nov\/2023 07:11:21","end_date_raw":1701398228,"end_date":"01\/Dec\/2023 02:12:08","description":"Qui aut velit quam dolore qui asperiores.","billable":false,"duration":67847},{"start_date_raw":1701398528,"start_date":"01\/Dec\/2023 02:12:08","end_date_raw":1701401148,"end_date":"01\/Dec\/2023 03:12:48","description":"Laudantium est laudantium ea ut repellendus.","billable":true,"duration":2620}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0003","description":"Qui excepturi et aut et voluptates eius perferendis. Repellat eum illo quis aliquid occaecati reprehenderit officia. Est earum nihil similique recusandae aut ut est error. Enim molestiae assumenda quaerat neque unde. Consequatur vel placeat commodi molestiae.","duration":259657,"rate":"$9.00","rate_raw":"9.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Abel Moore","number":"0001","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$107.00","task_rate_raw":"107.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Omnis modi optio maxime ut inventore.","budgeted_hours":339,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":390,"tasks":[],"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700498928,"end_date":"20\/Nov\/2023 16:11:48","description":"Animi asperiores velit quaerat sapiente dolorem officiis.","billable":false,"duration":70462},{"start_date_raw":1700499228,"start_date":"20\/Nov\/2023 16:11:48","end_date_raw":1700516753,"end_date":"20\/Nov\/2023 21:11:53","description":"Et facere ut tempora similique et sunt culpa.","billable":false,"duration":17525},{"start_date_raw":1700517053,"start_date":"20\/Nov\/2023 21:11:53","end_date_raw":1700523921,"end_date":"20\/Nov\/2023 23:11:21","description":"Consequatur enim non reprehenderit quia.","billable":false,"duration":6868},{"start_date_raw":1700524221,"start_date":"20\/Nov\/2023 23:11:21","end_date_raw":1700609374,"end_date":"21\/Nov\/2023 23:11:34","description":"Nobis non nesciunt ut reprehenderit at.","billable":false,"duration":85153},{"start_date_raw":1700609674,"start_date":"21\/Nov\/2023 23:11:34","end_date_raw":1700689323,"end_date":"22\/Nov\/2023 21:11:03","description":"Blanditiis repellendus quo voluptatum eveniet iste.","billable":false,"duration":79649}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0004","description":"Ipsam tempora id vero perferendis. Nulla laudantium iste qui quod et voluptatem. Aliquam et vel est minus ratione.","duration":179131,"rate":"$146.00","rate_raw":"146.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Abel Moore","number":"0001","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$107.00","task_rate_raw":"107.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Omnis modi optio maxime ut inventore.","budgeted_hours":339,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":390,"tasks":[],"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428466,"start_date":"19\/Nov\/2023 21:11:26","end_date_raw":1700446786,"end_date":"20\/Nov\/2023 02:11:46","description":"Ipsam voluptatum sed officiis eos quo.","billable":true,"duration":18320},{"start_date_raw":1700447086,"start_date":"20\/Nov\/2023 02:11:46","end_date_raw":1700520087,"end_date":"20\/Nov\/2023 22:11:27","description":"Et maxime rem provident veritatis.","billable":true,"duration":73001},{"start_date_raw":1700520387,"start_date":"20\/Nov\/2023 22:11:27","end_date_raw":1700603783,"end_date":"21\/Nov\/2023 21:11:23","description":"Deserunt soluta dolorem harum voluptas necessitatibus eum laborum omnis.","billable":false,"duration":83396},{"start_date_raw":1700604083,"start_date":"21\/Nov\/2023 22:11:23","end_date_raw":1700608497,"end_date":"21\/Nov\/2023 23:11:57","description":"Esse et aperiam nobis dolor voluptas.","billable":true,"duration":4414}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0005","description":"Enim fugiat at excepturi voluptate debitis ea. Hic officiis quaerat molestiae ullam minus consequuntur ut. Officiis quas consequatur error quae eveniet. Dolorum aliquam provident aperiam asperiores alias modi quae a.","duration":3230,"rate":"$78.00","rate_raw":"78.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428467,"start_date":"19\/Nov\/2023 21:11:27","end_date_raw":1700431697,"end_date":"19\/Nov\/2023 22:11:17","description":"Repudiandae nam et consequatur consequatur.","billable":false,"duration":3230}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Schroeder-Beahan","balance":"60576.340000","payment_balance":"0.000000","credit_balance":"0.000000"}},{"number":"0006","description":"Dolor quidem aperiam rerum. Voluptates aut vel ut consequatur. Nam et unde cupiditate qui voluptates voluptatum. Temporibus assumenda enim nam neque.","duration":156986,"rate":"$92.00","rate_raw":"92.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Prof. Noah Jaskolski II","number":"0002","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$52.00","task_rate_raw":"52.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Mollitia ut vel quam. Quia et aut minus.","budgeted_hours":660,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":57,"tasks":[],"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428467,"start_date":"19\/Nov\/2023 21:11:27","end_date_raw":1700443047,"end_date":"20\/Nov\/2023 01:11:27","description":"Unde sequi dicta corporis odio.","billable":true,"duration":14580},{"start_date_raw":1700443347,"start_date":"20\/Nov\/2023 01:11:27","end_date_raw":1700489146,"end_date":"20\/Nov\/2023 14:11:46","description":"Qui rem id inventore velit corporis vitae.","billable":false,"duration":45799},{"start_date_raw":1700489446,"start_date":"20\/Nov\/2023 14:11:46","end_date_raw":1700514655,"end_date":"20\/Nov\/2023 21:11:55","description":"Rerum repellat unde et blanditiis sunt animi aliquid accusantium.","billable":false,"duration":25209},{"start_date_raw":1700514955,"start_date":"20\/Nov\/2023 21:11:55","end_date_raw":1700515449,"end_date":"20\/Nov\/2023 21:11:09","description":"Quasi velit sit et explicabo quibusdam nam.","billable":true,"duration":494},{"start_date_raw":1700515749,"start_date":"20\/Nov\/2023 21:11:09","end_date_raw":1700586653,"end_date":"21\/Nov\/2023 17:11:53","description":"Numquam eos aut eum est corrupti dolorem et.","billable":false,"duration":70904}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"}},{"number":"0007","description":"Omnis totam eum sed dolores quod rerum. Ducimus voluptate iste quia dolorum consequatur sint. Velit vitae sint qui molestias. Dolores ea rerum voluptates iusto qui natus beatae.","duration":47670,"rate":"$88.00","rate_raw":"88.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Prof. Noah Jaskolski II","number":"0002","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$52.00","task_rate_raw":"52.000000","due_date":"25\/Nov\/2023","private_notes":"","public_notes":"Mollitia ut vel quam. Quia et aut minus.","budgeted_hours":660,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":57,"tasks":[],"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428467,"start_date":"19\/Nov\/2023 21:11:27","end_date_raw":1700476137,"end_date":"20\/Nov\/2023 10:11:57","description":"Sint laudantium quia eveniet quod nobis occaecati nihil.","billable":false,"duration":47670}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"cypress","balance":"13866.150000","payment_balance":"0.000000","credit_balance":"1013.630000"}},{"number":"0008","description":"Molestiae dolor explicabo et in commodi eveniet. Expedita voluptatibus nihil ut. Et porro cumque nisi omnis maxime accusantium earum.","duration":638322,"rate":"$130.00","rate_raw":"130.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700504838,"end_date":"20\/Nov\/2023 18:11:18","description":"Delectus consequatur esse quaerat vel.","billable":false,"duration":76370},{"start_date_raw":1700505138,"start_date":"20\/Nov\/2023 18:11:18","end_date_raw":1700579924,"end_date":"21\/Nov\/2023 15:11:44","description":"Eveniet culpa qui quo architecto recusandae ut occaecati aut.","billable":true,"duration":74786},{"start_date_raw":1700580224,"start_date":"21\/Nov\/2023 15:11:44","end_date_raw":1700646586,"end_date":"22\/Nov\/2023 09:11:46","description":"Delectus quia officiis vero quia corporis.","billable":true,"duration":66362},{"start_date_raw":1700646886,"start_date":"22\/Nov\/2023 09:11:46","end_date_raw":1700732597,"end_date":"23\/Nov\/2023 09:11:17","description":"Non ut placeat dolorum et.","billable":true,"duration":85711},{"start_date_raw":1700732897,"start_date":"23\/Nov\/2023 09:11:17","end_date_raw":1700740803,"end_date":"23\/Nov\/2023 12:11:03","description":"Numquam natus accusantium voluptatem aliquam maxime fugiat voluptatem.","billable":true,"duration":7906},{"start_date_raw":1700741103,"start_date":"23\/Nov\/2023 12:11:03","end_date_raw":1700807283,"end_date":"24\/Nov\/2023 06:11:03","description":"Quae est ut optio atque fugit non.","billable":false,"duration":66180},{"start_date_raw":1700807583,"start_date":"24\/Nov\/2023 06:11:03","end_date_raw":1700889007,"end_date":"25\/Nov\/2023 05:11:07","description":"Natus voluptas quo id nam iure neque eveniet id.","billable":false,"duration":81424},{"start_date_raw":1700889307,"start_date":"25\/Nov\/2023 05:11:07","end_date_raw":1700949728,"end_date":"25\/Nov\/2023 22:11:08","description":"Sed suscipit voluptatem officia reprehenderit qui occaecati saepe veniam.","billable":false,"duration":60421},{"start_date_raw":1700950028,"start_date":"25\/Nov\/2023 22:11:08","end_date_raw":1700972964,"end_date":"26\/Nov\/2023 04:11:24","description":"Officiis sequi aut natus sapiente.","billable":true,"duration":22936},{"start_date_raw":1700973264,"start_date":"26\/Nov\/2023 04:11:24","end_date_raw":1700986155,"end_date":"26\/Nov\/2023 08:11:15","description":"Et similique odit quasi eaque harum.","billable":false,"duration":12891},{"start_date_raw":1700986455,"start_date":"26\/Nov\/2023 08:11:15","end_date_raw":1701069790,"end_date":"27\/Nov\/2023 07:11:10","description":"Qui magnam vero unde nam dolorem qui.","billable":true,"duration":83335}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"}},{"number":"0009","description":"Ipsam numquam nesciunt corporis veritatis vitae porro maiores. Delectus sit itaque dolores. Atque et dolorem nisi est.","duration":439161,"rate":"$120.00","rate_raw":"120.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Mr. Easton Streich","number":"0003","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$153.00","task_rate_raw":"153.000000","due_date":"28\/Nov\/2023","private_notes":"","public_notes":"Debitis sit ut voluptatem eaque veritatis.","budgeted_hours":216,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":496,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700434593,"end_date":"19\/Nov\/2023 22:11:33","description":"At unde dolores quasi quia.","billable":true,"duration":6125},{"start_date_raw":1700434893,"start_date":"19\/Nov\/2023 23:11:33","end_date_raw":1700498703,"end_date":"20\/Nov\/2023 16:11:03","description":"Et quae non voluptatum nam quia velit suscipit.","billable":false,"duration":63810},{"start_date_raw":1700499003,"start_date":"20\/Nov\/2023 16:11:03","end_date_raw":1700548104,"end_date":"21\/Nov\/2023 06:11:24","description":"Quidem delectus sed et.","billable":true,"duration":49101},{"start_date_raw":1700548404,"start_date":"21\/Nov\/2023 06:11:24","end_date_raw":1700629022,"end_date":"22\/Nov\/2023 04:11:02","description":"Soluta velit enim explicabo dolorem commodi.","billable":false,"duration":80618},{"start_date_raw":1700629322,"start_date":"22\/Nov\/2023 05:11:02","end_date_raw":1700647716,"end_date":"22\/Nov\/2023 10:11:36","description":"Est magni qui quis.","billable":false,"duration":18394},{"start_date_raw":1700648016,"start_date":"22\/Nov\/2023 10:11:36","end_date_raw":1700731147,"end_date":"23\/Nov\/2023 09:11:07","description":"Saepe aspernatur non molestias dolor ea quos in.","billable":false,"duration":83131},{"start_date_raw":1700731447,"start_date":"23\/Nov\/2023 09:11:07","end_date_raw":1700782753,"end_date":"23\/Nov\/2023 23:11:13","description":"Alias id nihil laboriosam aliquam odio qui excepturi.","billable":true,"duration":51306},{"start_date_raw":1700783053,"start_date":"23\/Nov\/2023 23:11:13","end_date_raw":1700795456,"end_date":"24\/Nov\/2023 03:11:56","description":"Eos numquam et atque quia a qui nesciunt.","billable":false,"duration":12403},{"start_date_raw":1700795756,"start_date":"24\/Nov\/2023 03:11:56","end_date_raw":1700812488,"end_date":"24\/Nov\/2023 07:11:48","description":"Ut voluptas in natus qui.","billable":false,"duration":16732},{"start_date_raw":1700812788,"start_date":"24\/Nov\/2023 07:11:48","end_date_raw":1700842826,"end_date":"24\/Nov\/2023 16:11:26","description":"Est aut magnam ratione.","billable":false,"duration":30038},{"start_date_raw":1700843126,"start_date":"24\/Nov\/2023 16:11:26","end_date_raw":1700870629,"end_date":"25\/Nov\/2023 00:11:49","description":"Exercitationem non odio quasi ut saepe.","billable":true,"duration":27503}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0010","description":"Quo recusandae optio est saepe consectetur optio. Accusantium eum quia eaque. Voluptatum eligendi similique velit dolor eos rerum cumque quaerat.","duration":425934,"rate":"$98.00","rate_raw":"98.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Mr. Easton Streich","number":"0003","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$153.00","task_rate_raw":"153.000000","due_date":"28\/Nov\/2023","private_notes":"","public_notes":"Debitis sit ut voluptatem eaque veritatis.","budgeted_hours":216,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":496,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700463790,"end_date":"20\/Nov\/2023 07:11:10","description":"Culpa aut consequatur earum ut.","billable":false,"duration":35322},{"start_date_raw":1700464090,"start_date":"20\/Nov\/2023 07:11:10","end_date_raw":1700536862,"end_date":"21\/Nov\/2023 03:11:02","description":"Reprehenderit et esse qui hic quia est iusto.","billable":false,"duration":72772},{"start_date_raw":1700537162,"start_date":"21\/Nov\/2023 03:11:02","end_date_raw":1700592394,"end_date":"21\/Nov\/2023 18:11:34","description":"In est enim dolore nesciunt distinctio magni qui.","billable":true,"duration":55232},{"start_date_raw":1700592694,"start_date":"21\/Nov\/2023 18:11:34","end_date_raw":1700635771,"end_date":"22\/Nov\/2023 06:11:31","description":"Est saepe quasi alias aut odit officiis corporis.","billable":true,"duration":43077},{"start_date_raw":1700636071,"start_date":"22\/Nov\/2023 06:11:31","end_date_raw":1700637953,"end_date":"22\/Nov\/2023 07:11:53","description":"Consequuntur ipsa ut voluptate accusamus quibusdam sint sed.","billable":false,"duration":1882},{"start_date_raw":1700638253,"start_date":"22\/Nov\/2023 07:11:53","end_date_raw":1700687668,"end_date":"22\/Nov\/2023 21:11:28","description":"Sunt similique error et nostrum reprehenderit dolor.","billable":false,"duration":49415},{"start_date_raw":1700687968,"start_date":"22\/Nov\/2023 21:11:28","end_date_raw":1700712068,"end_date":"23\/Nov\/2023 04:11:08","description":"Aut rerum quis fugiat nostrum facilis ut.","billable":false,"duration":24100},{"start_date_raw":1700712368,"start_date":"23\/Nov\/2023 04:11:08","end_date_raw":1700783951,"end_date":"23\/Nov\/2023 23:11:11","description":"Aut culpa omnis sint et quos quisquam sint.","billable":true,"duration":71583},{"start_date_raw":1700784251,"start_date":"24\/Nov\/2023 00:11:11","end_date_raw":1700845166,"end_date":"24\/Nov\/2023 16:11:26","description":"Voluptas ut ratione porro eaque iste voluptas.","billable":true,"duration":60915},{"start_date_raw":1700845466,"start_date":"24\/Nov\/2023 17:11:26","end_date_raw":1700857102,"end_date":"24\/Nov\/2023 20:11:22","description":"Qui ipsa minus sed saepe maiores necessitatibus.","billable":true,"duration":11636}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0011","description":"Eligendi molestiae et quis et tempora esse ut. Sed ut est possimus et minus aut incidunt. Quibusdam rerum incidunt molestias est qui quam temporibus fuga.","duration":637522,"rate":"$120.00","rate_raw":"120.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Mr. Easton Streich","number":"0003","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$153.00","task_rate_raw":"153.000000","due_date":"28\/Nov\/2023","private_notes":"","public_notes":"Debitis sit ut voluptatem eaque veritatis.","budgeted_hours":216,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":496,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700499282,"end_date":"20\/Nov\/2023 16:11:42","description":"Quasi temporibus doloremque consequatur minus pariatur facere.","billable":true,"duration":70814},{"start_date_raw":1700499582,"start_date":"20\/Nov\/2023 16:11:42","end_date_raw":1700584386,"end_date":"21\/Nov\/2023 16:11:06","description":"Id distinctio sed eos qui.","billable":true,"duration":84804},{"start_date_raw":1700584686,"start_date":"21\/Nov\/2023 16:11:06","end_date_raw":1700635554,"end_date":"22\/Nov\/2023 06:11:54","description":"Facere explicabo non nostrum.","billable":true,"duration":50868},{"start_date_raw":1700635854,"start_date":"22\/Nov\/2023 06:11:54","end_date_raw":1700672533,"end_date":"22\/Nov\/2023 17:11:13","description":"Numquam sit labore facere voluptatibus quibusdam reiciendis et.","billable":true,"duration":36679},{"start_date_raw":1700672833,"start_date":"22\/Nov\/2023 17:11:13","end_date_raw":1700678587,"end_date":"22\/Nov\/2023 18:11:07","description":"Perspiciatis ad hic nostrum et.","billable":true,"duration":5754},{"start_date_raw":1700678887,"start_date":"22\/Nov\/2023 18:11:07","end_date_raw":1700708730,"end_date":"23\/Nov\/2023 03:11:30","description":"Qui culpa iure eos quaerat voluptatum numquam inventore.","billable":true,"duration":29843},{"start_date_raw":1700709030,"start_date":"23\/Nov\/2023 03:11:30","end_date_raw":1700765439,"end_date":"23\/Nov\/2023 18:11:39","description":"Similique molestiae atque voluptatem debitis dolorem quos quis et.","billable":false,"duration":56409},{"start_date_raw":1700765739,"start_date":"23\/Nov\/2023 18:11:39","end_date_raw":1700831780,"end_date":"24\/Nov\/2023 13:11:20","description":"Nam dolorum optio et omnis.","billable":true,"duration":66041},{"start_date_raw":1700832080,"start_date":"24\/Nov\/2023 13:11:20","end_date_raw":1700844498,"end_date":"24\/Nov\/2023 16:11:18","description":"Non eos amet repellat tempore id.","billable":false,"duration":12418},{"start_date_raw":1700844798,"start_date":"24\/Nov\/2023 16:11:18","end_date_raw":1700899153,"end_date":"25\/Nov\/2023 07:11:13","description":"Iste neque nostrum laudantium officia.","billable":false,"duration":54355},{"start_date_raw":1700899453,"start_date":"25\/Nov\/2023 08:11:13","end_date_raw":1700971949,"end_date":"26\/Nov\/2023 04:11:29","description":"Ut quia ratione sed et.","billable":true,"duration":72496},{"start_date_raw":1700972249,"start_date":"26\/Nov\/2023 04:11:29","end_date_raw":1700984833,"end_date":"26\/Nov\/2023 07:11:13","description":"Sapiente quia magni quisquam eos rerum rem.","billable":false,"duration":12584},{"start_date_raw":1700985133,"start_date":"26\/Nov\/2023 07:11:13","end_date_raw":1701069590,"end_date":"27\/Nov\/2023 07:11:50","description":"Nulla et ducimus doloribus est.","billable":true,"duration":84457}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0012","description":"Ea cumque amet quas et suscipit. Voluptatum libero enim minus necessitatibus qui voluptatem. Voluptates soluta quae in et aut possimus veniam.","duration":283580,"rate":"$78.00","rate_raw":"78.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Mr. Easton Streich","number":"0003","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$153.00","task_rate_raw":"153.000000","due_date":"28\/Nov\/2023","private_notes":"","public_notes":"Debitis sit ut voluptatem eaque veritatis.","budgeted_hours":216,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":496,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700469690,"end_date":"20\/Nov\/2023 08:11:30","description":"Placeat vel sit voluptas architecto sed.","billable":true,"duration":41222},{"start_date_raw":1700469990,"start_date":"20\/Nov\/2023 08:11:30","end_date_raw":1700483859,"end_date":"20\/Nov\/2023 12:11:39","description":"Voluptatem est quo est dolorem.","billable":true,"duration":13869},{"start_date_raw":1700484159,"start_date":"20\/Nov\/2023 12:11:39","end_date_raw":1700541376,"end_date":"21\/Nov\/2023 04:11:16","description":"Perferendis nulla quos omnis inventore sint.","billable":false,"duration":57217},{"start_date_raw":1700541676,"start_date":"21\/Nov\/2023 04:11:16","end_date_raw":1700609280,"end_date":"21\/Nov\/2023 23:11:00","description":"Quia quae ad cum neque.","billable":true,"duration":67604},{"start_date_raw":1700609580,"start_date":"21\/Nov\/2023 23:11:00","end_date_raw":1700668490,"end_date":"22\/Nov\/2023 15:11:50","description":"Pariatur et ipsa cumque consequatur voluptatum nemo.","billable":true,"duration":58910},{"start_date_raw":1700668790,"start_date":"22\/Nov\/2023 15:11:50","end_date_raw":1700690815,"end_date":"22\/Nov\/2023 22:11:55","description":"Officia explicabo illo ex tenetur.","billable":true,"duration":22025},{"start_date_raw":1700691115,"start_date":"22\/Nov\/2023 22:11:55","end_date_raw":1700713848,"end_date":"23\/Nov\/2023 04:11:48","description":"Quasi neque tempore aut at.","billable":true,"duration":22733}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0013","description":"Enim eveniet rem illo sed voluptatem vero dolorem. Sed consequatur quia autem culpa. Sed perspiciatis ullam non.","duration":512814,"rate":"$145.00","rate_raw":"145.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700442008,"end_date":"20\/Nov\/2023 01:11:08","description":"Et et delectus in rerum fuga et ipsam.","billable":true,"duration":13540},{"start_date_raw":1700442308,"start_date":"20\/Nov\/2023 01:11:08","end_date_raw":1700488304,"end_date":"20\/Nov\/2023 13:11:44","description":"In porro et sed eos.","billable":true,"duration":45996},{"start_date_raw":1700488604,"start_date":"20\/Nov\/2023 13:11:44","end_date_raw":1700529328,"end_date":"21\/Nov\/2023 01:11:28","description":"Eveniet similique sint minima voluptatibus voluptatem sunt.","billable":false,"duration":40724},{"start_date_raw":1700529628,"start_date":"21\/Nov\/2023 01:11:28","end_date_raw":1700560989,"end_date":"21\/Nov\/2023 10:11:09","description":"Ut est fuga id qui ut.","billable":false,"duration":31361},{"start_date_raw":1700561289,"start_date":"21\/Nov\/2023 10:11:09","end_date_raw":1700635644,"end_date":"22\/Nov\/2023 06:11:24","description":"Est consequatur nisi itaque.","billable":false,"duration":74355},{"start_date_raw":1700635944,"start_date":"22\/Nov\/2023 06:11:24","end_date_raw":1700650878,"end_date":"22\/Nov\/2023 11:11:18","description":"Ut vitae et velit magnam aut sed ut.","billable":true,"duration":14934},{"start_date_raw":1700651178,"start_date":"22\/Nov\/2023 11:11:18","end_date_raw":1700672376,"end_date":"22\/Nov\/2023 16:11:36","description":"Id odio laudantium quae similique.","billable":false,"duration":21198},{"start_date_raw":1700672676,"start_date":"22\/Nov\/2023 17:11:36","end_date_raw":1700734868,"end_date":"23\/Nov\/2023 10:11:08","description":"Saepe non vel reiciendis autem quidem quos.","billable":true,"duration":62192},{"start_date_raw":1700735168,"start_date":"23\/Nov\/2023 10:11:08","end_date_raw":1700772446,"end_date":"23\/Nov\/2023 20:11:26","description":"Occaecati commodi cupiditate esse molestiae velit.","billable":true,"duration":37278},{"start_date_raw":1700772746,"start_date":"23\/Nov\/2023 20:11:26","end_date_raw":1700785864,"end_date":"24\/Nov\/2023 00:11:04","description":"Quia et cupiditate expedita cumque quas.","billable":true,"duration":13118},{"start_date_raw":1700786164,"start_date":"24\/Nov\/2023 00:11:04","end_date_raw":1700806681,"end_date":"24\/Nov\/2023 06:11:01","description":"Eos consequatur soluta labore soluta ut.","billable":true,"duration":20517},{"start_date_raw":1700806981,"start_date":"24\/Nov\/2023 06:11:01","end_date_raw":1700839054,"end_date":"24\/Nov\/2023 15:11:34","description":"Impedit vel pariatur dicta necessitatibus at harum eius.","billable":true,"duration":32073},{"start_date_raw":1700839354,"start_date":"24\/Nov\/2023 15:11:34","end_date_raw":1700866888,"end_date":"24\/Nov\/2023 23:11:28","description":"Laboriosam nihil veritatis voluptatum qui laboriosam iusto.","billable":true,"duration":27534},{"start_date_raw":1700867188,"start_date":"24\/Nov\/2023 23:11:28","end_date_raw":1700875021,"end_date":"25\/Nov\/2023 01:11:01","description":"Error accusamus sapiente reiciendis.","billable":true,"duration":7833},{"start_date_raw":1700875321,"start_date":"25\/Nov\/2023 01:11:01","end_date_raw":1700886769,"end_date":"25\/Nov\/2023 04:11:49","description":"Impedit eius consequatur quod qui quod expedita quis.","billable":false,"duration":11448},{"start_date_raw":1700887069,"start_date":"25\/Nov\/2023 04:11:49","end_date_raw":1700945782,"end_date":"25\/Nov\/2023 20:11:22","description":"Tempora omnis nesciunt placeat omnis architecto quis.","billable":true,"duration":58713}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0014","description":"In soluta aliquid et eius. Molestiae veritatis animi culpa et amet porro modi ut. Id sequi nobis itaque modi explicabo voluptatem quam. Non ex voluptatem error aspernatur odit.","duration":346244,"rate":"$70.00","rate_raw":"70.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Elenor Orn","number":"0004","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$39.00","task_rate_raw":"39.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Distinctio ut voluptas deleniti est sed quae.","budgeted_hours":372,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":331,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700458211,"end_date":"20\/Nov\/2023 05:11:11","description":"Voluptate aut dicta recusandae consectetur est ducimus.","billable":false,"duration":29743},{"start_date_raw":1700458511,"start_date":"20\/Nov\/2023 05:11:11","end_date_raw":1700516247,"end_date":"20\/Nov\/2023 21:11:27","description":"Dolores incidunt praesentium rerum.","billable":false,"duration":57736},{"start_date_raw":1700516547,"start_date":"20\/Nov\/2023 21:11:27","end_date_raw":1700549251,"end_date":"21\/Nov\/2023 06:11:31","description":"Perspiciatis consequatur et alias praesentium placeat modi aut.","billable":true,"duration":32704},{"start_date_raw":1700549551,"start_date":"21\/Nov\/2023 06:11:31","end_date_raw":1700618445,"end_date":"22\/Nov\/2023 02:11:45","description":"Esse libero incidunt non rem sunt quisquam repudiandae nisi.","billable":true,"duration":68894},{"start_date_raw":1700618745,"start_date":"22\/Nov\/2023 02:11:45","end_date_raw":1700698086,"end_date":"23\/Nov\/2023 00:11:06","description":"Earum consectetur esse fugit sint autem tempore.","billable":true,"duration":79341},{"start_date_raw":1700698386,"start_date":"23\/Nov\/2023 00:11:06","end_date_raw":1700776212,"end_date":"23\/Nov\/2023 21:11:12","description":"Saepe sit consequatur vel eos ad iusto nobis.","billable":true,"duration":77826}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Ready to do","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0015","description":"Minus accusamus illum quia nihil voluptatum qui mollitia vel. Natus fugiat sequi quod eius occaecati non. Minus rerum ut eos est eveniet quae iure.","duration":410859,"rate":"$13.00","rate_raw":"13.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Elenor Orn","number":"0004","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$39.00","task_rate_raw":"39.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Distinctio ut voluptas deleniti est sed quae.","budgeted_hours":372,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":331,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428468,"start_date":"19\/Nov\/2023 21:11:28","end_date_raw":1700506053,"end_date":"20\/Nov\/2023 18:11:33","description":"Iste neque officiis eum maiores.","billable":true,"duration":77585},{"start_date_raw":1700506353,"start_date":"20\/Nov\/2023 18:11:33","end_date_raw":1700572042,"end_date":"21\/Nov\/2023 13:11:22","description":"Minus perferendis quia amet.","billable":true,"duration":65689},{"start_date_raw":1700572342,"start_date":"21\/Nov\/2023 13:11:22","end_date_raw":1700637291,"end_date":"22\/Nov\/2023 07:11:51","description":"Commodi quaerat hic minus et voluptas velit.","billable":true,"duration":64949},{"start_date_raw":1700637591,"start_date":"22\/Nov\/2023 07:11:51","end_date_raw":1700649610,"end_date":"22\/Nov\/2023 10:11:10","description":"Vitae rerum natus aperiam quia explicabo.","billable":false,"duration":12019},{"start_date_raw":1700649910,"start_date":"22\/Nov\/2023 10:11:10","end_date_raw":1700693674,"end_date":"22\/Nov\/2023 22:11:34","description":"Quos sunt dolorum eveniet provident ut.","billable":false,"duration":43764},{"start_date_raw":1700693974,"start_date":"22\/Nov\/2023 22:11:34","end_date_raw":1700775335,"end_date":"23\/Nov\/2023 21:11:35","description":"Animi quibusdam quisquam ea error earum consectetur.","billable":true,"duration":81361},{"start_date_raw":1700775635,"start_date":"23\/Nov\/2023 21:11:35","end_date_raw":1700808126,"end_date":"24\/Nov\/2023 06:11:06","description":"Ratione ipsam molestiae dolorem sit architecto voluptas.","billable":true,"duration":32491},{"start_date_raw":1700808426,"start_date":"24\/Nov\/2023 06:11:06","end_date_raw":1700817758,"end_date":"24\/Nov\/2023 09:11:38","description":"Maxime reprehenderit voluptates culpa.","billable":false,"duration":9332},{"start_date_raw":1700818058,"start_date":"24\/Nov\/2023 09:11:38","end_date_raw":1700841727,"end_date":"24\/Nov\/2023 16:11:07","description":"Atque deleniti et laboriosam molestias repellat accusamus omnis.","billable":false,"duration":23669}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0016","description":"Temporibus illum voluptatibus molestias quia omnis illo molestias corporis. Hic et hic quia dolores quas sint dolorem. Repellendus minus quae fuga illum amet in voluptatum. Rerum mollitia est eum voluptatum architecto non nisi qui. Est et dolores omnis placeat repellat sed facilis.","duration":435319,"rate":"$89.00","rate_raw":"89.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Elenor Orn","number":"0004","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$39.00","task_rate_raw":"39.000000","due_date":"27\/Nov\/2023","private_notes":"","public_notes":"Distinctio ut voluptas deleniti est sed quae.","budgeted_hours":372,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":331,"tasks":[],"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700496403,"end_date":"20\/Nov\/2023 16:11:43","description":"Sunt unde repellat reiciendis quos porro et dolores.","billable":true,"duration":67934},{"start_date_raw":1700496703,"start_date":"20\/Nov\/2023 16:11:43","end_date_raw":1700551129,"end_date":"21\/Nov\/2023 07:11:49","description":"Voluptatem laborum repudiandae enim asperiores.","billable":false,"duration":54426},{"start_date_raw":1700551429,"start_date":"21\/Nov\/2023 07:11:49","end_date_raw":1700631865,"end_date":"22\/Nov\/2023 05:11:25","description":"Placeat numquam magnam occaecati.","billable":false,"duration":80436},{"start_date_raw":1700632165,"start_date":"22\/Nov\/2023 05:11:25","end_date_raw":1700695854,"end_date":"22\/Nov\/2023 23:11:54","description":"Qui quo et est vero autem reprehenderit.","billable":false,"duration":63689},{"start_date_raw":1700696154,"start_date":"22\/Nov\/2023 23:11:54","end_date_raw":1700736857,"end_date":"23\/Nov\/2023 10:11:17","description":"Et voluptatem distinctio dolor fuga hic ea.","billable":false,"duration":40703},{"start_date_raw":1700737157,"start_date":"23\/Nov\/2023 10:11:17","end_date_raw":1700790692,"end_date":"24\/Nov\/2023 01:11:32","description":"Quo expedita quidem ab dolor quam expedita porro.","billable":true,"duration":53535},{"start_date_raw":1700790992,"start_date":"24\/Nov\/2023 01:11:32","end_date_raw":1700817527,"end_date":"24\/Nov\/2023 09:11:47","description":"Adipisci voluptatem officiis quaerat ut quos facilis.","billable":false,"duration":26535},{"start_date_raw":1700817827,"start_date":"24\/Nov\/2023 09:11:47","end_date_raw":1700865888,"end_date":"24\/Nov\/2023 22:11:48","description":"Tenetur ut dolorem vero.","billable":true,"duration":48061}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Done","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Walsh-Considine","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1960.450000"}},{"number":"0017","description":"Repudiandae nam labore dolores nihil sunt dolorem recusandae rerum. Ut consequatur vel et aut facilis. Sapiente distinctio cupiditate qui repellat ipsum harum.","duration":835159,"rate":"$65.00","rate_raw":"65.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":[],"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700448921,"end_date":"20\/Nov\/2023 02:11:21","description":"Veniam iusto aperiam quis sunt nihil qui neque.","billable":true,"duration":20452},{"start_date_raw":1700449221,"start_date":"20\/Nov\/2023 03:11:21","end_date_raw":1700480544,"end_date":"20\/Nov\/2023 11:11:24","description":"Molestiae vero ea quis numquam et dicta reprehenderit.","billable":true,"duration":31323},{"start_date_raw":1700480844,"start_date":"20\/Nov\/2023 11:11:24","end_date_raw":1700513241,"end_date":"20\/Nov\/2023 20:11:21","description":"Qui id accusantium eius esse pariatur qui.","billable":false,"duration":32397},{"start_date_raw":1700513541,"start_date":"20\/Nov\/2023 20:11:21","end_date_raw":1700579256,"end_date":"21\/Nov\/2023 15:11:36","description":"Unde porro perspiciatis dolor praesentium dolor.","billable":true,"duration":65715},{"start_date_raw":1700579556,"start_date":"21\/Nov\/2023 15:11:36","end_date_raw":1700631702,"end_date":"22\/Nov\/2023 05:11:42","description":"Laboriosam eligendi deserunt veritatis impedit ipsum rerum voluptas.","billable":false,"duration":52146},{"start_date_raw":1700632002,"start_date":"22\/Nov\/2023 05:11:42","end_date_raw":1700687284,"end_date":"22\/Nov\/2023 21:11:04","description":"Molestiae sint a facere.","billable":true,"duration":55282},{"start_date_raw":1700687584,"start_date":"22\/Nov\/2023 21:11:04","end_date_raw":1700731618,"end_date":"23\/Nov\/2023 09:11:58","description":"Asperiores in repudiandae eligendi sed eveniet sequi quae.","billable":false,"duration":44034},{"start_date_raw":1700731918,"start_date":"23\/Nov\/2023 09:11:58","end_date_raw":1700785496,"end_date":"24\/Nov\/2023 00:11:56","description":"Ratione quia rem odit ea doloremque et.","billable":true,"duration":53578},{"start_date_raw":1700785796,"start_date":"24\/Nov\/2023 00:11:56","end_date_raw":1700814699,"end_date":"24\/Nov\/2023 08:11:39","description":"Deserunt quam alias incidunt sit placeat tenetur.","billable":true,"duration":28903},{"start_date_raw":1700814999,"start_date":"24\/Nov\/2023 08:11:39","end_date_raw":1700889011,"end_date":"25\/Nov\/2023 05:11:11","description":"Libero sed numquam quidem vel esse magni vel laudantium.","billable":false,"duration":74012},{"start_date_raw":1700889311,"start_date":"25\/Nov\/2023 05:11:11","end_date_raw":1700943511,"end_date":"25\/Nov\/2023 20:11:31","description":"Rerum aliquid aliquam error deleniti quo eaque.","billable":true,"duration":54200},{"start_date_raw":1700943811,"start_date":"25\/Nov\/2023 20:11:31","end_date_raw":1701013647,"end_date":"26\/Nov\/2023 15:11:27","description":"Quos vel est rerum nihil id.","billable":false,"duration":69836},{"start_date_raw":1701013947,"start_date":"26\/Nov\/2023 15:11:27","end_date_raw":1701099520,"end_date":"27\/Nov\/2023 15:11:40","description":"Cum quia maxime dignissimos quo.","billable":true,"duration":85573},{"start_date_raw":1701099820,"start_date":"27\/Nov\/2023 15:11:40","end_date_raw":1701163104,"end_date":"28\/Nov\/2023 09:11:24","description":"Amet ea exercitationem quo sed eos corporis.","billable":false,"duration":63284},{"start_date_raw":1701163404,"start_date":"28\/Nov\/2023 09:11:24","end_date_raw":1701220140,"end_date":"29\/Nov\/2023 01:11:00","description":"Sunt voluptas atque odio nesciunt aliquam in earum.","billable":true,"duration":56736},{"start_date_raw":1701220440,"start_date":"29\/Nov\/2023 01:11:00","end_date_raw":1701268128,"end_date":"29\/Nov\/2023 14:11:48","description":"Odio voluptatibus rerum non.","billable":false,"duration":47688}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Hoeger, Hahn and Cole","balance":"0.000000","payment_balance":"0.000000","credit_balance":"1022.550000"}},{"number":"0018","description":"Odit rerum iusto quibusdam. A mollitia cupiditate enim consequatur omnis qui voluptas quibusdam. Recusandae et non ut ipsum asperiores non iusto.","duration":312865,"rate":"$95.00","rate_raw":"95.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Maryjane Macejkovic","number":"0005","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$78.00","task_rate_raw":"78.000000","due_date":"26\/Nov\/2023","private_notes":"","public_notes":"Nesciunt est sit ea explicabo.","budgeted_hours":405,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":194,"tasks":[],"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700476677,"end_date":"20\/Nov\/2023 10:11:57","description":"Quam dolores ut dolorem quo sint atque.","billable":true,"duration":48208},{"start_date_raw":1700476977,"start_date":"20\/Nov\/2023 10:11:57","end_date_raw":1700520944,"end_date":"20\/Nov\/2023 22:11:44","description":"Unde minus veniam corporis qui laboriosam suscipit quas.","billable":true,"duration":43967},{"start_date_raw":1700521244,"start_date":"20\/Nov\/2023 23:11:44","end_date_raw":1700602639,"end_date":"21\/Nov\/2023 21:11:19","description":"Beatae molestiae molestias sed dolor recusandae et id eligendi.","billable":false,"duration":81395},{"start_date_raw":1700602939,"start_date":"21\/Nov\/2023 21:11:19","end_date_raw":1700682077,"end_date":"22\/Nov\/2023 19:11:17","description":"Repellendus nam perspiciatis exercitationem in iste officia.","billable":true,"duration":79138},{"start_date_raw":1700682377,"start_date":"22\/Nov\/2023 19:11:17","end_date_raw":1700692054,"end_date":"22\/Nov\/2023 22:11:34","description":"Consequatur quaerat dolor consequuntur aperiam enim reiciendis.","billable":true,"duration":9677},{"start_date_raw":1700692354,"start_date":"22\/Nov\/2023 22:11:34","end_date_raw":1700742834,"end_date":"23\/Nov\/2023 12:11:54","description":"Qui quia ut sed accusantium odit reprehenderit quaerat.","billable":true,"duration":50480}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"}},{"number":"0019","description":"Eius et dolor libero repellendus iste. Nemo sit error sed necessitatibus architecto et. Aspernatur omnis doloremque animi quas sed.","duration":387217,"rate":"$87.00","rate_raw":"87.000000","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","date":"19\/Nov\/2023","project":{"name":"Maryjane Macejkovic","number":"0005","created_at":"19\/Nov\/2023","updated_at":"19\/Nov\/2023","task_rate":"$78.00","task_rate_raw":"78.000000","due_date":"26\/Nov\/2023","private_notes":"","public_notes":"Nesciunt est sit ea explicabo.","budgeted_hours":405,"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","color":"#fff","current_hours":194,"tasks":[],"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"},"user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"}},"time_log":[{"start_date_raw":1700428469,"start_date":"19\/Nov\/2023 21:11:29","end_date_raw":1700434042,"end_date":"19\/Nov\/2023 22:11:22","description":"Aut aliquam totam in reprehenderit sint suscipit earum.","billable":false,"duration":5573},{"start_date_raw":1700434342,"start_date":"19\/Nov\/2023 22:11:22","end_date_raw":1700467844,"end_date":"20\/Nov\/2023 08:11:44","description":"Hic aliquid natus est.","billable":false,"duration":33502},{"start_date_raw":1700468144,"start_date":"20\/Nov\/2023 08:11:44","end_date_raw":1700532877,"end_date":"21\/Nov\/2023 02:11:37","description":"Illo atque dolores eligendi minus et ut consequuntur.","billable":false,"duration":64733},{"start_date_raw":1700533177,"start_date":"21\/Nov\/2023 02:11:37","end_date_raw":1700619369,"end_date":"22\/Nov\/2023 02:11:09","description":"Libero ipsa eligendi sit dolor eligendi quibusdam dicta tenetur.","billable":false,"duration":86192},{"start_date_raw":1700619669,"start_date":"22\/Nov\/2023 02:11:09","end_date_raw":1700646879,"end_date":"22\/Nov\/2023 09:11:39","description":"Dolor unde assumenda blanditiis tenetur blanditiis ipsam quis.","billable":true,"duration":27210},{"start_date_raw":1700647179,"start_date":"22\/Nov\/2023 09:11:39","end_date_raw":1700704537,"end_date":"23\/Nov\/2023 01:11:37","description":"Reprehenderit possimus nisi recusandae.","billable":true,"duration":57358},{"start_date_raw":1700704837,"start_date":"23\/Nov\/2023 02:11:37","end_date_raw":1700733175,"end_date":"23\/Nov\/2023 09:11:55","description":"Aut saepe sint qui magni.","billable":false,"duration":28338},{"start_date_raw":1700733475,"start_date":"23\/Nov\/2023 09:11:55","end_date_raw":1700735626,"end_date":"23\/Nov\/2023 10:11:46","description":"Facere repellendus voluptas illo a.","billable":true,"duration":2151},{"start_date_raw":1700735926,"start_date":"23\/Nov\/2023 10:11:46","end_date_raw":1700769798,"end_date":"23\/Nov\/2023 20:11:18","description":"Voluptatem praesentium ipsum soluta earum.","billable":false,"duration":33872},{"start_date_raw":1700770098,"start_date":"23\/Nov\/2023 20:11:18","end_date_raw":1700818386,"end_date":"24\/Nov\/2023 09:11:06","description":"Dicta eum quis dicta quae.","billable":true,"duration":48288}],"custom_value1":"","custom_value2":"","custom_value3":"","custom_value4":"","status":"Backlog","user":{"name":"Laron Weissnat Danika Flatley","email":"small@example.com"},"client":{"name":"Medhurst Inc","balance":"37633.780000","payment_balance":"0.000000","credit_balance":"1025.100000"}}]';
public string $invoice_data = '[{"amount":"$6,054.13","balance":"$0.00","balance_raw":"0.000000","number":"0015","discount":1,"po_number":"","date":"20\/Sep\/2023","last_sent_date":"","next_send_date":"","due_date":"","terms":"","public_notes":"","private_notes":"","uses_inclusive_taxes":false,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"total_taxes":"$444.13","total_taxes_raw":"444.130000","is_amount_discount":true,"footer":"","partial":"0.000000","partial_due_date":"","custom_value1":"1984-10-01","custom_value2":"no","custom_value3":"","custom_value4":"","custom_surcharge1":0,"custom_surcharge2":0,"custom_surcharge3":0,"custom_surcharge4":0,"exchange_rate":1,"custom_surcharge_tax1":false,"custom_surcharge_tax2":false,"custom_surcharge_tax3":false,"custom_surcharge_tax4":false,"line_items":[{"quantity":1,"cost":"$935.00","product_key":"Et.","notes":"Illum similique.","discount":"$0.00","is_amount_discount":true,"tax_name1":"Sales Tax","tax_rate1":5,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":0,"line_total":"$935.00","gross_line_total":"$981.75","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"78","custom_value3":"Itaque laudantium.","custom_value4":"Qui voluptatem ea a.","type_id":"1","product_cost":"$0.00","tax_amount":"$46.75","date":"","tax_id":"","task_id":"","expense_id":"","cost_raw":935,"discount_raw":0,"line_total_raw":935,"gross_line_total_raw":981.75,"tax_amount_raw":46.75,"product_cost_raw":0},{"quantity":1,"cost":"$935.00","product_key":"Et.","notes":"Illum similique.","discount":"$0.00","is_amount_discount":true,"tax_name1":"","tax_rate1":0,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":0,"line_total":"$935.00","gross_line_total":"$935.00","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"78","custom_value3":"Itaque laudantium.","custom_value4":"Qui voluptatem ea a.","type_id":"1","product_cost":"$0.00","tax_amount":"$0.00","date":"","tax_id":"","task_id":"","expense_id":"","cost_raw":935,"discount_raw":0,"line_total_raw":935,"gross_line_total_raw":935,"tax_amount_raw":0,"product_cost_raw":0},{"quantity":1,"cost":"$935.00","product_key":"Et.","notes":"Illum similique.","discount":"$0.00","is_amount_discount":true,"tax_name1":"GST","tax_rate1":10,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":0,"line_total":"$935.00","gross_line_total":"$1,028.50","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"78","custom_value3":"Itaque laudantium.","custom_value4":"Qui voluptatem ea a.","type_id":"1","product_cost":"$0.00","tax_amount":"$93.50","date":"","tax_id":"","task_id":"","expense_id":"","cost_raw":935,"discount_raw":0,"line_total_raw":935,"gross_line_total_raw":1028.5,"tax_amount_raw":93.5,"product_cost_raw":0},{"quantity":1,"cost":"$935.00","product_key":"Et.","notes":"Illum similique.","discount":"$0.00","is_amount_discount":true,"tax_name1":"VAT","tax_rate1":17.5,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":0,"line_total":"$935.00","gross_line_total":"$1,098.63","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"78","custom_value3":"Itaque laudantium.","custom_value4":"Qui voluptatem ea a.","type_id":"1","product_cost":"$0.00","tax_amount":"$163.63","date":"","tax_id":"","task_id":"","expense_id":"","cost_raw":935,"discount_raw":0,"line_total_raw":935,"gross_line_total_raw":1098.63,"tax_amount_raw":163.63,"product_cost_raw":0},{"quantity":1,"cost":"$935.00","product_key":"Et.","notes":"Illum similique.","discount":"$0.00","is_amount_discount":true,"tax_name1":"GST","tax_rate1":10,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":0,"line_total":"$935.00","gross_line_total":"$1,028.50","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"78","custom_value3":"Itaque laudantium.","custom_value4":"Qui voluptatem ea a.","type_id":"1","product_cost":"$0.00","tax_amount":"$93.50","date":"","tax_id":"","task_id":"","expense_id":"","cost_raw":935,"discount_raw":0,"line_total_raw":935,"gross_line_total_raw":1028.5,"tax_amount_raw":93.5,"product_cost_raw":0},{"quantity":1,"cost":"$935.00","product_key":"Et.","notes":"Illum similique.","discount":"$0.00","is_amount_discount":true,"tax_name1":"Sales Tax","tax_rate1":5,"tax_name2":"","tax_rate2":0,"tax_name3":"","tax_rate3":0,"sort_id":0,"line_total":"$935.00","gross_line_total":"$981.75","custom_value1":"https:\/\/picsum.photos\/200","custom_value2":"78","custom_value3":"Itaque laudantium.","custom_value4":"Qui voluptatem ea a.","type_id":"1","product_cost":"$0.00","tax_amount":"$46.75","date":"","tax_id":"","task_id":"","expense_id":"","cost_raw":935,"discount_raw":0,"line_total_raw":935,"gross_line_total_raw":981.75,"tax_amount_raw":46.75,"product_cost_raw":0}],"reminder1_sent":"","reminder2_sent":"","reminder3_sent":"","reminder_last_sent":"","paid_to_date":"$6,054.13","auto_bill_enabled":false,"client":{"name":"Lowe-Paucek","balance":"38124.670000","payment_balance":"0.000000","credit_balance":"2270.590000"},"payments":[{"status":"Completed","badge":"