mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-08 15:14:33 -04:00
Merge branch 'v5-develop' into v5-stable
This commit is contained in:
commit
a9593867cc
@ -1 +1 @@
|
||||
5.1.60
|
||||
5.1.61
|
@ -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);
|
||||
|
@ -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);
|
||||
},
|
||||
|
@ -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);
|
||||
}
|
||||
|
||||
|
@ -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);
|
||||
}
|
||||
|
||||
|
@ -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);
|
||||
|
||||
|
@ -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()
|
||||
|
@ -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']}";
|
||||
|
@ -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();
|
||||
|
@ -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);
|
||||
|
@ -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);
|
||||
|
@ -47,7 +47,6 @@ class CompanyUser extends Pivot
|
||||
'is_locked',
|
||||
'slack_webhook_url',
|
||||
'shop_restricted',
|
||||
'number_years_active',
|
||||
];
|
||||
|
||||
protected $touches = ['user'];
|
||||
|
@ -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,
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -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,
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -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'];
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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
152
composer.lock
generated
@ -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,
|
||||
|
@ -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),
|
||||
|
@ -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()
|
||||
{
|
||||
}
|
||||
}
|
@ -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}'],
|
||||
|
@ -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
|
||||
|
4
public/flutter_service_worker.js
vendored
4
public/flutter_service_worker.js
vendored
@ -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
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
203876
public/main.foss.dart.js
vendored
File diff suppressed because one or more lines are too long
16
public/main.foss.dart.js.map
Normal file
16
public/main.foss.dart.js.map
Normal file
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user