Merge branch 'v5-develop' into v5-stable

This commit is contained in:
David Bomba 2021-05-06 15:39:51 +10:00
commit a9593867cc
27 changed files with 205539 additions and 205067 deletions

View File

@ -1 +1 @@
5.1.60
5.1.61

View File

@ -194,8 +194,15 @@ class LoginController extends BaseController
}
$user->setCompany($user->account->default_company);
$timeout = auth()->user()->company()->default_password_timeout / 60000;
Cache::put(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
$timeout = $user->company()->default_password_timeout;
if($timeout == 0)
$timeout = 30*60*1000*1000;
else
$timeout = $timeout/1000;
Cache::put($user->hashed_id.'_logged_in', Str::random(64), $timeout);
$cu = CompanyUser::query()
->where('user_id', auth()->user()->id);
@ -333,7 +340,15 @@ class LoginController extends BaseController
Auth::login($existing_user, true);
$existing_user->setCompany($existing_user->account->default_company);
$timeout = $existing_user->company()->default_password_timeout / 60000;
$timeout = $existing_user->company()->default_password_timeout;
if($timeout == 0)
$timeout = 30*60*1000*1000;
else
$timeout = $timeout/1000;
Cache::put($existing_user->hashed_id.'_logged_in', Str::random(64), $timeout);
$cu = CompanyUser::query()
@ -375,7 +390,15 @@ class LoginController extends BaseController
auth()->user()->email_verified_at = now();
auth()->user()->save();
$timeout = auth()->user()->company()->default_password_timeout / 60000;
$timeout = auth()->user()->company()->default_password_timeout;
if($timeout == 0)
$timeout = 30*60*1000*1000;
else
$timeout = $timeout/1000;
Cache::put(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
$cu = CompanyUser::whereUserId(auth()->user()->id);

View File

@ -107,10 +107,11 @@ class BaseController extends Controller
'token',
'company.activities',
'company.documents',
//'company.users.company_user',
'company.users.company_user',
'company.tax_rates',
'company.groups',
'company.payment_terms',
'company.designs.company',
];
public function __construct()
@ -416,12 +417,12 @@ class BaseController extends Controller
$query->where('credits.user_id', $user->id)->orWhere('credits.assigned_user_id', $user->id);
},
'company.designs'=> function ($query) use ($created_at, $user) {
$query->where('created_at', '>=', $created_at)->with('company');
// 'company.designs'=> function ($query) use ($created_at, $user) {
// $query->where('created_at', '>=', $created_at)->with('company');
if(!$user->isAdmin())
$query->where('designs.user_id', $user->id);
},
// if(!$user->isAdmin())
// $query->where('designs.user_id', $user->id);
// },
'company.documents'=> function ($query) use ($created_at, $user) {
$query->where('created_at', '>=', $created_at);
},

View File

@ -208,6 +208,9 @@ class PaymentController extends BaseController
{
$payment = $this->payment_repo->save($request->all(), PaymentFactory::create(auth()->user()->company()->id, auth()->user()->id));
if($request->has('email_receipt') && $request->input('email_receipt') == 'true' && !$payment->client->getSetting('client_manual_payment_notification'))
$payment->service()->sendEmail();
return $this->itemResponse($payment);
}

View File

@ -58,7 +58,7 @@ class SelfUpdateController extends BaseController
set_time_limit(0);
define('STDIN', fopen('php://stdin', 'r'));
if (Ninja::isNinja()) {
if (Ninja::isHosted()) {
return response()->json(['message' => ctrans('texts.self_update_not_available')], 403);
}

View File

@ -40,14 +40,13 @@ class PasswordProtection
$timeout = auth()->user()->company()->default_password_timeout;
if($timeout == 0)
$timeout = null;
$timeout = 30*60*1000*1000;
else
$timeout = now()->addMinutes($timeout/60000);
$timeout = $timeout/1000;
if (Cache::get(auth()->user()->hashed_id.'_logged_in')) {
Cache::pull(auth()->user()->hashed_id.'_logged_in');
Cache::add(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
Cache::put(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
return $next($request);
@ -69,12 +68,12 @@ class PasswordProtection
//If OAuth and user also has a password set - check both
if ($existing_user = MultiDB::hasUser($query) && auth()->user()->has_password && Hash::check(auth()->user()->password, $request->header('X-API-PASSWORD'))) {
Cache::add(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
Cache::put(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
return $next($request);
}
elseif($existing_user = MultiDB::hasUser($query) && !auth()->user()->has_password){
Cache::add(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
Cache::put(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
return $next($request);
}
}
@ -84,7 +83,7 @@ class PasswordProtection
}elseif ($request->header('X-API-PASSWORD') && Hash::check($request->header('X-API-PASSWORD'), auth()->user()->password)) {
Cache::add(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
Cache::put(auth()->user()->hashed_id.'_logged_in', Str::random(64), $timeout);
return $next($request);

View File

@ -23,7 +23,7 @@ class UpdateUserRequest extends Request
*/
public function authorize() : bool
{
return auth()->user()->id === $this->id || auth()->user()->isAdmin();
return auth()->user()->id == $this->user->id || auth()->user()->isAdmin();
}
public function rules()

View File

@ -459,6 +459,19 @@ class Import implements ShouldQueue
$user_repository = null;
}
private function checkUniqueConstraint($model, $column, $value)
{
$model_query = (new $model())
->query()
->where($column, $value)
->exists();
if($model_query)
return $value.'_'. Str::random(5);
return $value;
}
/**
* @param array $data
* @throws Exception
@ -476,6 +489,7 @@ class Import implements ShouldQueue
$modified['user_id'] = $this->processUserId($resource);
$modified['balance'] = $modified['balance'] ?: 0;
$modified['paid_to_date'] = $modified['paid_to_date'] ?: 0;
$modified['number'] = $this->checkUniqueConstraint(Client::class, 'number', $modified['number']);
unset($modified['id']);
unset($modified['contacts']);
@ -488,6 +502,14 @@ class Import implements ShouldQueue
)
);
if(array_key_exists('created_at', $modified))
$client->created_at = $modified['created_at'];
if(array_key_exists('updated_at', $modified))
$client->updated_at = $modified['updated_at'];
$client->save(['timestamps' => false]);
$client->contacts()->forceDelete();
if (array_key_exists('contacts', $resource)) { // need to remove after importing new migration.json
@ -891,6 +913,14 @@ class Import implements ShouldQueue
QuoteFactory::create($this->company->id, $modified['user_id'])
);
if(array_key_exists('created_at', $modified))
$quote->created_at = $modified['created_at'];
if(array_key_exists('updated_at', $modified))
$quote->updated_at = $modified['updated_at'];
$quote->save(['timestamps' => false]);
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
$key = "quotes_{$resource['id']}";
@ -957,6 +987,14 @@ class Import implements ShouldQueue
PaymentFactory::create($this->company->id, $modified['user_id'])
);
if(array_key_exists('created_at', $modified))
$payment->created_at = $modified['created_at'];
if(array_key_exists('updated_at', $modified))
$payment->updated_at = $modified['updated_at'];
$payment->save(['timestamps' => false]);
if (array_key_exists('company_gateway_id', $resource) && isset($resource['company_gateway_id']) && $resource['company_gateway_id'] != 'NULL') {
$payment->company_gateway_id = $this->transformId('company_gateways', $resource['company_gateway_id']);
$payment->save();
@ -1319,6 +1357,14 @@ class Import implements ShouldQueue
$task = Task::Create($modified);
if(array_key_exists('created_at', $modified))
$task->created_at = $modified['created_at'];
if(array_key_exists('updated_at', $modified))
$task->updated_at = $modified['updated_at'];
$task->save(['timestamps' => false]);
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
$this->ids['tasks'] = [
@ -1399,6 +1445,14 @@ class Import implements ShouldQueue
$expense = Expense::Create($modified);
if(array_key_exists('created_at', $modified))
$expense->created_at = $modified['created_at'];
if(array_key_exists('updated_at', $modified))
$expense->updated_at = $modified['updated_at'];
$expense->save(['timestamps' => false]);
$old_user_key = array_key_exists('user_id', $resource) ?? $this->user->id;
$key = "expenses_{$resource['id']}";

View File

@ -49,7 +49,7 @@ class VersionCheck implements ShouldQueue
if(!$account)
return;
if($account->plan == 'white_label' && $account->plan_expires->lt(now())){
if($account->plan == 'white_label' && $account->plan_expires && $account->plan_expires->lt(now())){
$account->plan = null;
$account->plan_expires = null;
$account->save();

View File

@ -47,6 +47,7 @@ class InvoiceEmailActivity implements ShouldQueue
$fields->user_id = $event->invitation->invoice->user_id;
$fields->company_id = $event->invitation->invoice->company_id;
$fields->client_contact_id = $event->invitation->invoice->client_contact_id;
$fields->client_id = $event->invitation->invoice->client_id;
$fields->activity_type_id = Activity::EMAIL_INVOICE;
$this->activity_repo->save($fields, $event->invitation->invoice, $event->event_vars);

View File

@ -48,6 +48,7 @@ class QuoteEmailActivity implements ShouldQueue
$fields->user_id = $event->invitation->quote->user_id;
$fields->company_id = $event->invitation->quote->company_id;
$fields->client_contact_id = $event->invitation->quote->client_contact_id;
$fields->client_id = $event->invitation->quote->client_id;
$fields->activity_type_id = Activity::EMAIL_QUOTE;
$this->activity_repo->save($fields, $event->invitation->quote, $event->event_vars);

View File

@ -47,7 +47,6 @@ class CompanyUser extends Pivot
'is_locked',
'slack_webhook_url',
'shop_restricted',
'number_years_active',
];
protected $touches = ['user'];

View File

@ -157,6 +157,7 @@ class CompanyTransformer extends EntityTransformer
'oauth_password_required' => (bool)$company->oauth_password_required,
'session_timeout' => (int)$company->session_timeout,
'default_password_timeout' => (int) $company->default_password_timeout,
'invoice_task_datelog' => (bool) $company->invoice_task_datelog,
];
}

View File

@ -51,7 +51,7 @@ class CompanyUserTransformer extends EntityTransformer
'archived_at' => (int) $company_user->deleted_at,
'created_at' => (int) $company_user->created_at,
'permissions_updated_at' => (int) $company_user->permissions_updated_at,
'number_years_active' => (int) $company_user->number_years_active,
//'number_years_active' => (int) $company_user->number_years_active,
];
}

View File

@ -154,7 +154,7 @@ class HtmlEngine
}
$data['$portal_url'] = ['value' => $this->invitation->getPortalLink(), 'label' =>''];
$data['$entity_number'] = &$data['$number'];
$data['$invoice.discount'] = ['value' => Number::formatMoney($this->entity_calc->getTotalDiscount(), $this->client) ?: ' ', 'label' => ctrans('texts.discount')];
$data['$discount'] = &$data['$invoice.discount'];
@ -238,7 +238,7 @@ class HtmlEngine
$data['$vat_number'] = ['value' => $this->client->vat_number ?: ' ', 'label' => ctrans('texts.vat_number')];
$data['$website'] = ['value' => $this->client->present()->website() ?: ' ', 'label' => ctrans('texts.website')];
$data['$phone'] = ['value' => $this->client->present()->phone() ?: ' ', 'label' => ctrans('texts.phone')];
$data['$country'] = ['value' => isset($this->client->country->name) ? $this->client->country->name : '', 'label' => ctrans('texts.country')];
$data['$country'] = ['value' => isset($this->client->country->name) ? ctrans('texts.country_' . $this->client->country->name) : '', 'label' => ctrans('texts.country')];
$data['$email'] = ['value' => isset($this->contact) ? $this->contact->email : 'no contact email on record', 'label' => ctrans('texts.email')];
$data['$client_name'] = ['value' => $this->entity->present()->clientName() ?: ' ', 'label' => ctrans('texts.client_name')];
$data['$client.name'] = &$data['$client_name'];

View File

@ -431,54 +431,55 @@ trait GeneratesCounter
$reset_date = Carbon::parse($client->getSetting('reset_counter_date'), $timezone->name);
if (! $reset_date->isToday() || ! $client->getSetting('reset_counter_date')) {
if (! $reset_date->lte(now()) || ! $client->getSetting('reset_counter_date')) {
return false;
}
switch ($reset_counter_frequency) {
case RecurringInvoice::FREQUENCY_DAILY:
$reset_date->addDay();
now()->addDay();
break;
case RecurringInvoice::FREQUENCY_WEEKLY:
$reset_date->addWeek();
now()->addWeek();
break;
case RecurringInvoice::FREQUENCY_TWO_WEEKS:
$reset_date->addWeeks(2);
now()->addWeeks(2);
break;
case RecurringInvoice::FREQUENCY_FOUR_WEEKS:
$reset_date->addWeeks(4);
now()->addWeeks(4);
break;
case RecurringInvoice::FREQUENCY_MONTHLY:
$reset_date->addMonth();
now()->addMonth();
break;
case RecurringInvoice::FREQUENCY_TWO_MONTHS:
$reset_date->addMonths(2);
now()->addMonths(2);
break;
case RecurringInvoice::FREQUENCY_THREE_MONTHS:
$reset_date->addMonths(3);
now()->addMonths(3);
break;
case RecurringInvoice::FREQUENCY_FOUR_MONTHS:
$reset_date->addMonths(4);
now()->addMonths(4);
break;
case RecurringInvoice::FREQUENCY_SIX_MONTHS:
$reset_date->addMonths(6);
now()->addMonths(6);
break;
case RecurringInvoice::FREQUENCY_ANNUALLY:
$reset_date->addYear();
now()->addYear();
break;
case RecurringInvoice::FREQUENCY_TWO_YEARS:
$reset_date->addYears(2);
now()->addYears(2);
break;
}
$settings = $client->company->settings;
$settings->reset_counter_date = $reset_date->format($client->date_format());
$settings->reset_counter_date = $reset_date->format('Y-m-d');
$settings->invoice_number_counter = 1;
$settings->quote_number_counter = 1;
$settings->credit_number_counter = 1;
$client->company->settings = $settings;
$client->company->save();
}
private function resetCompanyCounters($company)
@ -487,7 +488,7 @@ trait GeneratesCounter
$reset_date = Carbon::parse($company->settings->reset_counter_date, $timezone->name);
if (! $reset_date->isToday() || ! $company->settings->reset_counter_date) {
if (! $reset_date->lte(now()) || ! $company->settings->reset_counter_date) {
return false;
}

View File

@ -30,6 +30,7 @@
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"asm/php-ansible": "dev-master",
"authorizenet/authorizenet": "^2.0",
"bacon/bacon-qr-code": "^2.0",
"beganovich/snappdf": "^1.0",

152
composer.lock generated
View File

@ -4,8 +4,60 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "f01381d3d00f0bd84acbda078ad1b99e",
"content-hash": "38a79899673526624db4d62a76dd9a5e",
"packages": [
{
"name": "asm/php-ansible",
"version": "dev-master",
"source": {
"type": "git",
"url": "https://github.com/maschmann/php-ansible.git",
"reference": "4f2145cad264fd9f800baf6d3a79dd43fd8009db"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/maschmann/php-ansible/zipball/4f2145cad264fd9f800baf6d3a79dd43fd8009db",
"reference": "4f2145cad264fd9f800baf6d3a79dd43fd8009db",
"shasum": ""
},
"require": {
"php": "^7.1.0|>8.0.0",
"psr/log": "^1.1",
"symfony/process": "^4.0|^5.0"
},
"require-dev": {
"mikey179/vfsstream": "^1.6",
"phpunit/phpunit": "^9.0"
},
"default-branch": true,
"type": "library",
"autoload": {
"psr-4": {
"Asm\\": "Asm"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Marc Aschmann",
"email": "maschmann@gmail.com"
}
],
"description": "A PHP wrapper for Ansible.",
"homepage": "https://github.com/maschmann/php-ansible",
"keywords": [
"ansible",
"php"
],
"support": {
"issues": "https://github.com/maschmann/php-ansible/issues",
"source": "https://github.com/maschmann/php-ansible/tree/master"
},
"time": "2021-03-02T18:27:29+00:00"
},
{
"name": "authorizenet/authorizenet",
"version": "2.0.2",
@ -51,16 +103,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.179.2",
"version": "3.180.1",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "7d3490e35878d0884905fa0c1ab43ecf178c8d9b"
"reference": "7801112fd8be227954a6ecfbfd85b01ee4a7cae4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/7d3490e35878d0884905fa0c1ab43ecf178c8d9b",
"reference": "7d3490e35878d0884905fa0c1ab43ecf178c8d9b",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/7801112fd8be227954a6ecfbfd85b01ee4a7cae4",
"reference": "7801112fd8be227954a6ecfbfd85b01ee4a7cae4",
"shasum": ""
},
"require": {
@ -135,9 +187,9 @@
"support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.179.2"
"source": "https://github.com/aws/aws-sdk-php/tree/3.180.1"
},
"time": "2021-04-30T19:46:52+00:00"
"time": "2021-05-04T18:14:38+00:00"
},
{
"name": "bacon/bacon-qr-code",
@ -2054,16 +2106,16 @@
},
{
"name": "google/apiclient-services",
"version": "v0.172.0",
"version": "v0.173.0",
"source": {
"type": "git",
"url": "https://github.com/googleapis/google-api-php-client-services.git",
"reference": "85e8a9f0062a9e1aba3cdc0f499968bc8de78b7d"
"reference": "9034b5ba3e25c9ad8e49b6457b9cad21fd9d9847"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/85e8a9f0062a9e1aba3cdc0f499968bc8de78b7d",
"reference": "85e8a9f0062a9e1aba3cdc0f499968bc8de78b7d",
"url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/9034b5ba3e25c9ad8e49b6457b9cad21fd9d9847",
"reference": "9034b5ba3e25c9ad8e49b6457b9cad21fd9d9847",
"shasum": ""
},
"require": {
@ -2089,9 +2141,9 @@
],
"support": {
"issues": "https://github.com/googleapis/google-api-php-client-services/issues",
"source": "https://github.com/googleapis/google-api-php-client-services/tree/v0.172.0"
"source": "https://github.com/googleapis/google-api-php-client-services/tree/v0.173.0"
},
"time": "2021-04-27T16:21:24+00:00"
"time": "2021-05-02T11:20:02+00:00"
},
{
"name": "google/auth",
@ -3836,12 +3888,12 @@
"source": {
"type": "git",
"url": "https://github.com/thephpleague/omnipay.git",
"reference": "e9439db0633ba988e6f6cdd029fad38aad73f9f6"
"reference": "d090c000030fc759e32f6f747873b5d630103030"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/omnipay/zipball/e9439db0633ba988e6f6cdd029fad38aad73f9f6",
"reference": "e9439db0633ba988e6f6cdd029fad38aad73f9f6",
"url": "https://api.github.com/repos/thephpleague/omnipay/zipball/d090c000030fc759e32f6f747873b5d630103030",
"reference": "d090c000030fc759e32f6f747873b5d630103030",
"shasum": ""
},
"require": {
@ -3886,7 +3938,7 @@
"issues": "https://github.com/thephpleague/omnipay/issues",
"source": "https://github.com/thephpleague/omnipay/tree/master"
},
"time": "2021-03-12T09:17:59+00:00"
"time": "2021-05-02T15:02:18+00:00"
},
{
"name": "livewire/livewire",
@ -4330,16 +4382,16 @@
},
{
"name": "nesbot/carbon",
"version": "2.46.0",
"version": "2.47.0",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
"reference": "2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4"
"reference": "606262fd8888b75317ba9461825a24fc34001e1e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4",
"reference": "2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/606262fd8888b75317ba9461825a24fc34001e1e",
"reference": "606262fd8888b75317ba9461825a24fc34001e1e",
"shasum": ""
},
"require": {
@ -4419,20 +4471,20 @@
"type": "tidelift"
}
],
"time": "2021-02-24T17:30:44+00:00"
"time": "2021-04-13T21:54:02+00:00"
},
{
"name": "nikic/php-parser",
"version": "v4.10.4",
"version": "v4.10.5",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
"reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e"
"reference": "4432ba399e47c66624bc73c8c0f811e5c109576f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e",
"reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4432ba399e47c66624bc73c8c0f811e5c109576f",
"reference": "4432ba399e47c66624bc73c8c0f811e5c109576f",
"shasum": ""
},
"require": {
@ -4473,9 +4525,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
"source": "https://github.com/nikic/PHP-Parser/tree/v4.10.4"
"source": "https://github.com/nikic/PHP-Parser/tree/v4.10.5"
},
"time": "2020-12-20T10:01:03+00:00"
"time": "2021-05-03T19:11:20+00:00"
},
{
"name": "nwidart/laravel-modules",
@ -6028,16 +6080,16 @@
},
{
"name": "psr/log",
"version": "1.1.3",
"version": "1.1.4",
"source": {
"type": "git",
"url": "https://github.com/php-fig/log.git",
"reference": "0f73288fd15629204f9d42b7055f72dacbe811fc"
"reference": "d49695b909c3b7628b6289db5479a1c204601f11"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc",
"reference": "0f73288fd15629204f9d42b7055f72dacbe811fc",
"url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
"reference": "d49695b909c3b7628b6289db5479a1c204601f11",
"shasum": ""
},
"require": {
@ -6061,7 +6113,7 @@
"authors": [
{
"name": "PHP-FIG",
"homepage": "http://www.php-fig.org/"
"homepage": "https://www.php-fig.org/"
}
],
"description": "Common interface for logging libraries",
@ -6072,9 +6124,9 @@
"psr-3"
],
"support": {
"source": "https://github.com/php-fig/log/tree/1.1.3"
"source": "https://github.com/php-fig/log/tree/1.1.4"
},
"time": "2020-03-23T09:12:05+00:00"
"time": "2021-05-03T11:20:27+00:00"
},
{
"name": "psr/simple-cache",
@ -9694,16 +9746,16 @@
},
{
"name": "turbo124/beacon",
"version": "1.0.10",
"version": "1.0.16",
"source": {
"type": "git",
"url": "https://github.com/turbo124/beacon.git",
"reference": "91d9b06848f45ef9ed933ef3b99b77fcc107c9df"
"reference": "17b6fc4370422a935ff7f2038c5167945905533f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/turbo124/beacon/zipball/91d9b06848f45ef9ed933ef3b99b77fcc107c9df",
"reference": "91d9b06848f45ef9ed933ef3b99b77fcc107c9df",
"url": "https://api.github.com/repos/turbo124/beacon/zipball/17b6fc4370422a935ff7f2038c5167945905533f",
"reference": "17b6fc4370422a935ff7f2038c5167945905533f",
"shasum": ""
},
"require": {
@ -9751,9 +9803,9 @@
"turbo124"
],
"support": {
"source": "https://github.com/turbo124/beacon/tree/1.0.10"
"source": "https://github.com/turbo124/beacon/tree/1.0.16"
},
"time": "2021-04-25T01:37:06+00:00"
"time": "2021-05-05T01:09:24+00:00"
},
{
"name": "turbo124/laravel-gmail",
@ -11311,16 +11363,16 @@
},
{
"name": "friendsofphp/php-cs-fixer",
"version": "v2.18.6",
"version": "v2.19.0",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
"reference": "5fed214993e7863cef88a08f214344891299b9e4"
"reference": "d5b8a9d852b292c2f8a035200fa6844b1f82300b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/5fed214993e7863cef88a08f214344891299b9e4",
"reference": "5fed214993e7863cef88a08f214344891299b9e4",
"url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/d5b8a9d852b292c2f8a035200fa6844b1f82300b",
"reference": "d5b8a9d852b292c2f8a035200fa6844b1f82300b",
"shasum": ""
},
"require": {
@ -11368,6 +11420,11 @@
"php-cs-fixer"
],
"type": "application",
"extra": {
"branch-alias": {
"dev-master": "2.19-dev"
}
},
"autoload": {
"psr-4": {
"PhpCsFixer\\": "src/"
@ -11403,7 +11460,7 @@
"description": "A tool to automatically fix PHP code style",
"support": {
"issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues",
"source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v2.18.6"
"source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v2.19.0"
},
"funding": [
{
@ -11411,7 +11468,7 @@
"type": "github"
}
],
"time": "2021-04-19T19:45:11+00:00"
"time": "2021-05-03T21:43:24+00:00"
},
{
"name": "hamcrest/hamcrest-php",
@ -14242,6 +14299,7 @@
"aliases": [],
"minimum-stability": "dev",
"stability-flags": {
"asm/php-ansible": 20,
"webpatser/laravel-countries": 20
},
"prefer-stable": true,

View File

@ -14,8 +14,8 @@ return [
'require_https' => env('REQUIRE_HTTPS', true),
'app_url' => rtrim(env('APP_URL', ''), '/'),
'app_domain' => env('APP_DOMAIN', 'invoicing.co'),
'app_version' => '5.1.60',
'app_tag' => '5.1.60-release',
'app_version' => '5.1.61',
'app_tag' => '5.1.61-release',
'minimum_client_version' => '5.0.16',
'terms_version' => '1.0.1',
'api_secret' => env('API_SECRET', false),

View File

@ -0,0 +1,31 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddTaskPropertyToCompaniesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('company_user', function (Blueprint $table) {
$table->dropColumn('number_years_active');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
}
}

View File

@ -62,7 +62,7 @@ class PaymentLibrariesSeeder extends Seeder
['id' => 36, 'name' => 'AGMS', 'provider' => 'Agms', 'key' => '1b3c6f3ccfea4f5e7eadeae188cccd7f', 'fields' => '{"username":"","password":"","apiKey":"","accountNumber":""}'],
['id' => 37, 'name' => 'Barclays', 'provider' => 'BarclaysEpdq\Essential', 'key' => '7cba6ce5c125f9cb47ea8443ae671b68', 'fields' => '{"clientId":"","testMode":false,"language":"en_US","callbackMethod":"POST"}'],
['id' => 38, 'name' => 'Cardgate', 'provider' => 'Cardgate', 'key' => 'b98cfa5f750e16cee3524b7b7e78fbf6', 'fields' => '{"merchantId":"","language":"nl","apiKey":"","siteId":"","notifyUrl":"","returnUrl":"","cancelUrl":"","testMode":false}'],
['id' => 39, 'name' => 'Checkout.com', 'provider' => 'CheckoutCom', 'key' => '3758e7f7c6f4cecf0f4f348b9a00f456', 'fields' => '{"secretApiKey":"","publicApiKey":"","testMode":false,"threeds:false"}'],
['id' => 39, 'name' => 'Checkout.com', 'provider' => 'CheckoutCom', 'key' => '3758e7f7c6f4cecf0f4f348b9a00f456', 'fields' => '{"secretApiKey":"","publicApiKey":"","testMode":false,"threeds":false}'],
['id' => 40, 'name' => 'Creditcall', 'provider' => 'Creditcall', 'key' => 'cbc7ef7c99d31ec05492fbcb37208263', 'fields' => '{"terminalId":"","transactionKey":"","testMode":false,"verifyCvv":true,"verifyAddress":false,"verifyZip":false}'],
['id' => 41, 'name' => 'Cybersource', 'provider' => 'Cybersource', 'key' => 'e186a98d3b079028a73390bdc11bdb82', 'fields' => '{"profileId":"","secretKey":"","accessKey":"","testMode":false}'],
['id' => 42, 'name' => 'ecoPayz', 'provider' => 'Ecopayz', 'key' => '761040aca40f685d1ab55e2084b30670', 'fields' => '{"merchantId":"","merchantPassword":"","merchantAccountNumber":"","testMode":false}'],

View File

@ -5037,6 +5037,7 @@ pedantic
platform
process
stream_transform
sync_http
term_glyph
Copyright 2017, the Dart project authors. All rights reserved.
@ -5420,6 +5421,7 @@ charts_flutter
--------------------------------------------------------------------------------
clock
coverage
fake_async
quiver
@ -7161,6 +7163,7 @@ SOFTWARE.
--------------------------------------------------------------------------------
flutter_styled_toast
webdriver
Apache License
Version 2.0, January 2004

View File

@ -9,8 +9,8 @@ const RESOURCES = {
"icons/Icon-192.png": "bb1cf5f6982006952211c7c8404ffbed",
"icons/Icon-512.png": "0f9aff01367f0a0c69773d25ca16ef35",
"manifest.json": "ce1b79950eb917ea619a0a30da27c6a3",
"main.dart.js": "1611483da0db927703a9fdff4a860b7f",
"assets/NOTICES": "dcba058006722202a4906fb433998480",
"main.dart.js": "ebae742cbdb100acc50ff9790d1c3496",
"assets/NOTICES": "687b68d41e137cfbdee105c0b9be3e9d",
"assets/fonts/MaterialIcons-Regular.otf": "1288c9e28052e028aba623321f7826ac",
"assets/AssetManifest.json": "659dcf9d1baf3aed3ab1b9c42112bf8f",
"assets/packages/material_design_icons_flutter/lib/fonts/materialdesignicons-webfont.ttf": "174c02fc4609e8fc4389f5d21f16a296",

206344
public/main.dart.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

203876
public/main.foss.dart.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long