mirror of
				https://github.com/invoiceninja/invoiceninja.git
				synced 2025-11-03 22:07:33 -05:00 
			
		
		
		
	
						commit
						e159106d4d
					
				@ -1 +1 @@
 | 
				
			|||||||
5.0.21
 | 
					5.0.22
 | 
				
			||||||
 | 
				
			|||||||
@ -84,9 +84,8 @@ class StoreClientRequest extends Request
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					
 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        //is no settings->currency_id is set then lets dive in and find either a group or company currency all the below may be redundant!!
 | 
					        //is no settings->currency_id is set then lets dive in and find either a group or company currency all the below may be redundant!!
 | 
				
			||||||
        if (! property_exists($settings, 'currency_id') && isset($input['group_settings_id'])) {
 | 
					        if (! property_exists($settings, 'currency_id') && isset($input['group_settings_id'])) {
 | 
				
			||||||
@ -108,29 +107,6 @@ class StoreClientRequest extends Request
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        $input['settings'] = $settings;
 | 
					        $input['settings'] = $settings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (isset($input['contacts'])) {
 | 
					 | 
				
			||||||
            foreach ($input['contacts'] as $key => $contact) {
 | 
					 | 
				
			||||||
                if (array_key_exists('id', $contact) && is_numeric($contact['id'])) {
 | 
					 | 
				
			||||||
                    unset($input['contacts'][$key]['id']);
 | 
					 | 
				
			||||||
                } elseif (array_key_exists('id', $contact) && is_string($contact['id'])) {
 | 
					 | 
				
			||||||
                    $input['contacts'][$key]['id'] = $this->decodePrimaryKey($contact['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                //Filter the client contact password - if it is sent with ***** we should ignore it!
 | 
					 | 
				
			||||||
                if (isset($contact['password'])) {
 | 
					 | 
				
			||||||
                    if (strlen($contact['password']) == 0) {
 | 
					 | 
				
			||||||
                        $input['contacts'][$key]['password'] = '';
 | 
					 | 
				
			||||||
                    } else {
 | 
					 | 
				
			||||||
                        $contact['password'] = str_replace('*', '', $contact['password']);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                        if (strlen($contact['password']) == 0) {
 | 
					 | 
				
			||||||
                            unset($input['contacts'][$key]['password']);
 | 
					 | 
				
			||||||
                        }
 | 
					 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['country_code'])) {
 | 
					        if (isset($input['country_code'])) {
 | 
				
			||||||
            $input['country_id'] = $this->getCountryCode($input['country_code']);
 | 
					            $input['country_id'] = $this->getCountryCode($input['country_code']);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
				
			|||||||
@ -95,33 +95,7 @@ class UpdateClientRequest extends Request
 | 
				
			|||||||
            $input['group_settings_id'] = $this->decodePrimaryKey($input['group_settings_id']);
 | 
					            $input['group_settings_id'] = $this->decodePrimaryKey($input['group_settings_id']);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['contacts'])) {
 | 
					 | 
				
			||||||
            foreach ($input['contacts'] as $key => $contact) {
 | 
					 | 
				
			||||||
                if (array_key_exists('id', $contact) && is_numeric($contact['id'])) {
 | 
					 | 
				
			||||||
                    unset($input['contacts'][$key]['id']);
 | 
					 | 
				
			||||||
                } elseif (array_key_exists('id', $contact) && is_string($contact['id'])) {
 | 
					 | 
				
			||||||
                    $input['contacts'][$key]['id'] = $this->decodePrimaryKey($contact['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                //Filter the client contact password - if it is sent with ***** we should ignore it!
 | 
					 | 
				
			||||||
                if (isset($contact['password'])) {
 | 
					 | 
				
			||||||
                    if (strlen($contact['password']) == 0) {
 | 
					 | 
				
			||||||
                        $input['contacts'][$key]['password'] = '';
 | 
					 | 
				
			||||||
                    } else {
 | 
					 | 
				
			||||||
                        $input['contacts'][$key]['password'] = str_replace('*', '', $contact['password']);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                        if (strlen($contact['password']) == 0) {
 | 
					 | 
				
			||||||
                            unset($input['contacts'][$key]['password']);
 | 
					 | 
				
			||||||
                        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('settings', $input)) {
 | 
					        if (array_key_exists('settings', $input)) {
 | 
				
			||||||
            $input['settings'] = $this->filterSaveableSettings($input['settings']);
 | 
					            $input['settings'] = $this->filterSaveableSettings($input['settings']);
 | 
				
			||||||
 | 
				
			|||||||
@ -2,6 +2,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\ClientPortal;
 | 
					namespace App\Http\Requests\ClientPortal;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use Illuminate\Foundation\Http\FormRequest;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class CreatePaymentMethodRequest extends FormRequest
 | 
					class CreatePaymentMethodRequest extends FormRequest
 | 
				
			||||||
 | 
				
			|||||||
@ -14,6 +14,7 @@ namespace App\Http\Requests\ClientPortal\Documents;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
use App\Models\Document;
 | 
					use App\Models\Document;
 | 
				
			||||||
use App\Utils\Traits\MakesHash;
 | 
					use App\Utils\Traits\MakesHash;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use Illuminate\Foundation\Http\FormRequest;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class ShowDocumentRequest extends FormRequest
 | 
					class ShowDocumentRequest extends FormRequest
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,13 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,11 +1,21 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Credit;
 | 
					use App\Models\Credit;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class CreateCreditRequest extends FormRequest
 | 
					class CreateCreditRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,10 +1,20 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class DestroyCreditRequest extends FormRequest
 | 
					class DestroyCreditRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,10 +1,20 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class EditCreditRequest extends FormRequest
 | 
					class EditCreditRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,10 +1,20 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class ShowCreditRequest extends FormRequest
 | 
					class ShowCreditRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,13 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -6,9 +15,9 @@ use App\Http\ValidationRules\Credit\UniqueCreditNumberRule;
 | 
				
			|||||||
use App\Models\Credit;
 | 
					use App\Models\Credit;
 | 
				
			||||||
use App\Utils\Traits\CleanLineItems;
 | 
					use App\Utils\Traits\CleanLineItems;
 | 
				
			||||||
use App\Utils\Traits\MakesHash;
 | 
					use App\Utils\Traits\MakesHash;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class StoreCreditRequest extends FormRequest
 | 
					class StoreCreditRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use MakesHash;
 | 
					    use MakesHash;
 | 
				
			||||||
    use CleanLineItems;
 | 
					    use CleanLineItems;
 | 
				
			||||||
@ -57,37 +66,7 @@ class StoreCreditRequest extends FormRequest
 | 
				
			|||||||
            $input['design_id'] = $this->decodePrimaryKey($input['design_id']);
 | 
					            $input['design_id'] = $this->decodePrimaryKey($input['design_id']);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('client_id', $input) && is_string($input['client_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['client_id'] = $this->decodePrimaryKey($input['client_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['client_contacts'])) {
 | 
					 | 
				
			||||||
            foreach ($input['client_contacts'] as $key => $contact) {
 | 
					 | 
				
			||||||
                if (! array_key_exists('send_email', $contact) || ! array_key_exists('id', $contact)) {
 | 
					 | 
				
			||||||
                    unset($input['client_contacts'][$key]);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['invitations'])) {
 | 
					 | 
				
			||||||
            foreach ($input['invitations'] as $key => $value) {
 | 
					 | 
				
			||||||
                if (isset($input['invitations'][$key]['id']) && is_numeric($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    unset($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (isset($input['invitations'][$key]['id']) && is_string($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['id'] = $this->decodePrimaryKey($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (is_string($input['invitations'][$key]['client_contact_id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['client_contact_id'] = $this->decodePrimaryKey($input['invitations'][$key]['client_contact_id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
					        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
				
			||||||
        //$input['line_items'] = json_encode($input['line_items']);
 | 
					        //$input['line_items'] = json_encode($input['line_items']);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,13 +1,23 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Credit;
 | 
					namespace App\Http\Requests\Credit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Utils\Traits\ChecksEntityStatus;
 | 
					use App\Utils\Traits\ChecksEntityStatus;
 | 
				
			||||||
use App\Utils\Traits\CleanLineItems;
 | 
					use App\Utils\Traits\CleanLineItems;
 | 
				
			||||||
use App\Utils\Traits\MakesHash;
 | 
					use App\Utils\Traits\MakesHash;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class UpdateCreditRequest extends FormRequest
 | 
					class UpdateCreditRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use MakesHash;
 | 
					    use MakesHash;
 | 
				
			||||||
    use CleanLineItems;
 | 
					    use CleanLineItems;
 | 
				
			||||||
@ -53,33 +63,7 @@ class UpdateCreditRequest extends FormRequest
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        $input = $this->all();
 | 
					        $input = $this->all();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('design_id', $input) && is_string($input['design_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['design_id'] = $this->decodePrimaryKey($input['design_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['client_id'])) {
 | 
					 | 
				
			||||||
            $input['client_id'] = $this->decodePrimaryKey($input['client_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['invitations'])) {
 | 
					 | 
				
			||||||
            foreach ($input['invitations'] as $key => $value) {
 | 
					 | 
				
			||||||
                if (is_numeric($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    unset($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (is_string($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['id'] = $this->decodePrimaryKey($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (is_string($input['invitations'][$key]['client_contact_id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['client_contact_id'] = $this->decodePrimaryKey($input['invitations'][$key]['client_contact_id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
					        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -12,9 +12,9 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Document;
 | 
					namespace App\Http\Requests\Document;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class DownloadMultipleDocumentsRequest extends FormRequest
 | 
					class DownloadMultipleDocumentsRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,22 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Expense;
 | 
					namespace App\Http\Requests\Expense;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Expense;
 | 
					use App\Models\Expense;
 | 
				
			||||||
use App\Utils\Traits\BulkOptions;
 | 
					use App\Utils\Traits\BulkOptions;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BulkExpenseRequest extends FormRequest
 | 
					class BulkExpenseRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use BulkOptions;
 | 
					    use BulkOptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -14,6 +14,7 @@ namespace App\Http\Requests\Expense;
 | 
				
			|||||||
use App\DataMapper\ExpenseSettings;
 | 
					use App\DataMapper\ExpenseSettings;
 | 
				
			||||||
use App\Http\Requests\Request;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
use App\Http\ValidationRules\Expense\UniqueExpenseNumberRule;
 | 
					use App\Http\ValidationRules\Expense\UniqueExpenseNumberRule;
 | 
				
			||||||
 | 
					use App\Http\ValidationRules\User\RelatedUserRule;
 | 
				
			||||||
use App\Http\ValidationRules\ValidExpenseGroupSettingsRule;
 | 
					use App\Http\ValidationRules\ValidExpenseGroupSettingsRule;
 | 
				
			||||||
use App\Models\Expense;
 | 
					use App\Models\Expense;
 | 
				
			||||||
use App\Utils\Traits\MakesHash;
 | 
					use App\Utils\Traits\MakesHash;
 | 
				
			||||||
@ -36,23 +37,24 @@ class StoreExpenseRequest extends Request
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    public function rules()
 | 
					    public function rules()
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					        $rules = [];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $rules['id_number'] = 'unique:expenses,id_number,'.$this->id.',id,company_id,'.$this->company_id;
 | 
					        $rules['id_number'] = 'unique:expenses,id_number,'.$this->id.',id,company_id,'.$this->company_id;
 | 
				
			||||||
 | 
					 | 
				
			||||||
        $rules['contacts.*.email'] = 'nullable|distinct';
 | 
					        $rules['contacts.*.email'] = 'nullable|distinct';
 | 
				
			||||||
 | 
					 | 
				
			||||||
        $rules['number'] = new UniqueExpenseNumberRule($this->all());
 | 
					        $rules['number'] = new UniqueExpenseNumberRule($this->all());
 | 
				
			||||||
 | 
					        $rules['client_id'] = 'bail|sometimes|exists:clients,id,company_id,'.auth()->user()->company()->id;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return $rules;
 | 
					
 | 
				
			||||||
 | 
					        return $this->globalRules($rules);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    protected function prepareForValidation()
 | 
					    protected function prepareForValidation()
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        // $input = $this->all();
 | 
					        $input = $this->all();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // $this->replace($input);
 | 
					        $this->replace($input);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public function messages()
 | 
					    public function messages()
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,22 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\ExpenseCategory;
 | 
					namespace App\Http\Requests\ExpenseCategory;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\ExpenseCategory;
 | 
					use App\Models\ExpenseCategory;
 | 
				
			||||||
use App\Utils\Traits\BulkOptions;
 | 
					use App\Utils\Traits\BulkOptions;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BulkExpenseCategoryRequest extends FormRequest
 | 
					class BulkExpenseCategoryRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use BulkOptions;
 | 
					    use BulkOptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -63,45 +63,7 @@ class StoreInvoiceRequest extends Request
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        $input = $this->all();
 | 
					        $input = $this->all();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('design_id', $input) && is_string($input['design_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['design_id'] = $this->decodePrimaryKey($input['design_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (array_key_exists('client_id', $input) && is_string($input['client_id'])) {
 | 
					 | 
				
			||||||
            $input['client_id'] = $this->decodePrimaryKey($input['client_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (array_key_exists('project_id', $input) && is_string($input['project_id'])) {
 | 
					 | 
				
			||||||
            $input['project_id'] = $this->decodePrimaryKey($input['project_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['client_contacts'])) {
 | 
					 | 
				
			||||||
            foreach ($input['client_contacts'] as $key => $contact) {
 | 
					 | 
				
			||||||
                if (! array_key_exists('send_email', $contact) || ! array_key_exists('id', $contact)) {
 | 
					 | 
				
			||||||
                    unset($input['client_contacts'][$key]);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['invitations'])) {
 | 
					 | 
				
			||||||
            foreach ($input['invitations'] as $key => $value) {
 | 
					 | 
				
			||||||
                if (isset($input['invitations'][$key]['id']) && is_numeric($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    unset($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (isset($input['invitations'][$key]['id']) && is_string($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['id'] = $this->decodePrimaryKey($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (is_string($input['invitations'][$key]['client_contact_id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['client_contact_id'] = $this->decodePrimaryKey($input['invitations'][$key]['client_contact_id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
					        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
				
			||||||
        //$input['line_items'] = json_encode($input['line_items']);
 | 
					        //$input['line_items'] = json_encode($input['line_items']);
 | 
				
			||||||
 | 
				
			|||||||
@ -62,35 +62,10 @@ class UpdateInvoiceRequest extends Request
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        $input = $this->all();
 | 
					        $input = $this->all();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('design_id', $input) && is_string($input['design_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['design_id'] = $this->decodePrimaryKey($input['design_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['client_id'])) {
 | 
					 | 
				
			||||||
            $input['client_id'] = $this->decodePrimaryKey($input['client_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['invitations'])) {
 | 
					 | 
				
			||||||
            foreach ($input['invitations'] as $key => $value) {
 | 
					 | 
				
			||||||
                if (array_key_exists('id', $input['invitations'][$key]) && is_numeric($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    unset($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (array_key_exists('id', $input['invitations'][$key]) && is_string($input['invitations'][$key]['id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['id'] = $this->decodePrimaryKey($input['invitations'][$key]['id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (is_string($input['invitations'][$key]['client_contact_id'])) {
 | 
					 | 
				
			||||||
                    $input['invitations'][$key]['client_contact_id'] = $this->decodePrimaryKey($input['invitations'][$key]['client_contact_id']);
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $input['id'] = $this->invoice->id;
 | 
					        $input['id'] = $this->invoice->id;
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
					        $input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $this->replace($input);
 | 
					        $this->replace($input);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,10 +1,20 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Migration;
 | 
					namespace App\Http\Requests\Migration;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class UploadMigrationFileRequest extends FormRequest
 | 
					class UploadMigrationFileRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -60,9 +60,7 @@ class UpdatePaymentRequest extends Request
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        $input = $this->all();
 | 
					        $input = $this->all();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (isset($input['client_id'])) {
 | 
					        if (isset($input['client_id'])) {
 | 
				
			||||||
            unset($input['client_id']);
 | 
					            unset($input['client_id']);
 | 
				
			||||||
@ -72,18 +70,6 @@ class UpdatePaymentRequest extends Request
 | 
				
			|||||||
            unset($input['amount']);
 | 
					            unset($input['amount']);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // if (isset($input['type_id'])) {
 | 
					 | 
				
			||||||
        //     unset($input['type_id']);
 | 
					 | 
				
			||||||
        // }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        // if (isset($input['date'])) {
 | 
					 | 
				
			||||||
        //     unset($input['date']);
 | 
					 | 
				
			||||||
        // }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        // if (isset($input['transaction_reference'])) {
 | 
					 | 
				
			||||||
        //     unset($input['transaction_reference']);
 | 
					 | 
				
			||||||
        // }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (isset($input['number'])) {
 | 
					        if (isset($input['number'])) {
 | 
				
			||||||
            unset($input['number']);
 | 
					            unset($input['number']);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,22 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Payments;
 | 
					namespace App\Http\Requests\Payments;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Company;
 | 
					use App\Models\Company;
 | 
				
			||||||
use App\Models\CompanyGateway;
 | 
					use App\Models\CompanyGateway;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class PaymentWebhookRequest extends FormRequest
 | 
					class PaymentWebhookRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    public function authorize()
 | 
					    public function authorize()
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
				
			|||||||
@ -11,10 +11,14 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests;
 | 
					namespace App\Http\Requests;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use App\Http\ValidationRules\User\RelatedUserRule;
 | 
				
			||||||
 | 
					use App\Utils\Traits\MakesHash;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use Illuminate\Foundation\Http\FormRequest;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class Request extends FormRequest
 | 
					class Request extends FormRequest
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						use MakesHash;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Get the validation rules that apply to the request.
 | 
					     * Get the validation rules that apply to the request.
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
@ -24,4 +28,124 @@ class Request extends FormRequest
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        return [];
 | 
					        return [];
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function globalRules($rules)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					    	$rules = [];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    	foreach($this->all() as $key => $value)
 | 
				
			||||||
 | 
					    	{
 | 
				
			||||||
 | 
					    		if(method_exists($this, $key))
 | 
				
			||||||
 | 
					    			$rules = $this->{$key}($rules); 
 | 
				
			||||||
 | 
					    	}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    	return $rules;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private function assigned_user_id($rules)
 | 
				
			||||||
 | 
					    {	
 | 
				
			||||||
 | 
					    	$rules['assigned_user_id'] = [
 | 
				
			||||||
 | 
					            'bail' , 
 | 
				
			||||||
 | 
					            'sometimes', 
 | 
				
			||||||
 | 
					            'nullable',
 | 
				
			||||||
 | 
					                new RelatedUserRule($this->all())
 | 
				
			||||||
 | 
					            ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        return $rules;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private function invoice_id($rules)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        $rules['invoice_id'] = 'bail|nullable|sometimes|exists:invoices,id,company_id,'.auth()->user()->company()->id.',client_id,'.$this['client_id'];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        return $rules;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private function vendor_id($rules)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        $rules['vendor_id'] = 'bail|sometimes|exists:vendors,id,company_id,'.auth()->user()->company()->id;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        return $rules;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function decodePrimaryKeys($input)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
				
			||||||
 | 
					            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('user_id', $input) && is_string($input['user_id'])) {
 | 
				
			||||||
 | 
					            $input['user_id'] = $this->decodePrimaryKey($input['user_id']);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('vendor_id', $input) && is_string($input['vendor_id'])) {
 | 
				
			||||||
 | 
					            $input['vendor_id'] = $this->decodePrimaryKey($input['vendor_id']);
 | 
				
			||||||
 | 
					        }        
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('client_id', $input) && is_string($input['client_id'])) {
 | 
				
			||||||
 | 
					            $input['client_id'] = $this->decodePrimaryKey($input['client_id']);
 | 
				
			||||||
 | 
					        }   
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('invoice_id', $input) && is_string($input['invoice_id'])) {
 | 
				
			||||||
 | 
					            $input['invoice_id'] = $this->decodePrimaryKey($input['invoice_id']);
 | 
				
			||||||
 | 
					        }  
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('design_id', $input) && is_string($input['design_id'])) {
 | 
				
			||||||
 | 
					            $input['design_id'] = $this->decodePrimaryKey($input['design_id']);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (array_key_exists('project_id', $input) && is_string($input['project_id'])) {
 | 
				
			||||||
 | 
					            $input['project_id'] = $this->decodePrimaryKey($input['project_id']);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (isset($input['client_contacts'])) {
 | 
				
			||||||
 | 
					            foreach ($input['client_contacts'] as $key => $contact) {
 | 
				
			||||||
 | 
					                if (! array_key_exists('send_email', $contact) || ! array_key_exists('id', $contact)) {
 | 
				
			||||||
 | 
					                    unset($input['client_contacts'][$key]);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (isset($input['invitations'])) {
 | 
				
			||||||
 | 
					            foreach ($input['invitations'] as $key => $value) {
 | 
				
			||||||
 | 
					                if (isset($input['invitations'][$key]['id']) && is_numeric($input['invitations'][$key]['id'])) {
 | 
				
			||||||
 | 
					                    unset($input['invitations'][$key]['id']);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                if (isset($input['invitations'][$key]['id']) && is_string($input['invitations'][$key]['id'])) {
 | 
				
			||||||
 | 
					                    $input['invitations'][$key]['id'] = $this->decodePrimaryKey($input['invitations'][$key]['id']);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                if (is_string($input['invitations'][$key]['client_contact_id'])) {
 | 
				
			||||||
 | 
					                    $input['invitations'][$key]['client_contact_id'] = $this->decodePrimaryKey($input['invitations'][$key]['client_contact_id']);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (isset($input['contacts'])) {
 | 
				
			||||||
 | 
					            foreach ($input['contacts'] as $key => $contact) {
 | 
				
			||||||
 | 
					                if (array_key_exists('id', $contact) && is_numeric($contact['id'])) {
 | 
				
			||||||
 | 
					                    unset($input['contacts'][$key]['id']);
 | 
				
			||||||
 | 
					                } elseif (array_key_exists('id', $contact) && is_string($contact['id'])) {
 | 
				
			||||||
 | 
					                    $input['contacts'][$key]['id'] = $this->decodePrimaryKey($contact['id']);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                //Filter the client contact password - if it is sent with ***** we should ignore it!
 | 
				
			||||||
 | 
					                if (isset($contact['password'])) {
 | 
				
			||||||
 | 
					                    if (strlen($contact['password']) == 0) {
 | 
				
			||||||
 | 
					                        $input['contacts'][$key]['password'] = '';
 | 
				
			||||||
 | 
					                    } else {
 | 
				
			||||||
 | 
					                        $contact['password'] = str_replace('*', '', $contact['password']);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        if (strlen($contact['password']) == 0) {
 | 
				
			||||||
 | 
					                            unset($input['contacts'][$key]['password']);
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					    	return $input;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,10 +1,20 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Setup;
 | 
					namespace App\Http\Requests\Setup;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class CheckDatabaseRequest extends FormRequest
 | 
					class CheckDatabaseRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,10 +1,20 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Setup;
 | 
					namespace App\Http\Requests\Setup;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class CheckMailRequest extends FormRequest
 | 
					class CheckMailRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Determine if the user is authorized to make this request.
 | 
					     * Determine if the user is authorized to make this request.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,22 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Task;
 | 
					namespace App\Http\Requests\Task;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Task;
 | 
					use App\Models\Task;
 | 
				
			||||||
use App\Utils\Traits\BulkOptions;
 | 
					use App\Utils\Traits\BulkOptions;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BulkTaskRequest extends FormRequest
 | 
					class BulkTaskRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use BulkOptions;
 | 
					    use BulkOptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,11 +1,21 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Token;
 | 
					namespace App\Http\Requests\Token;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Utils\Traits\BulkOptions;
 | 
					use App\Utils\Traits\BulkOptions;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BulkTokenRequest extends FormRequest
 | 
					class BulkTokenRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use BulkOptions;
 | 
					    use BulkOptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										14
									
								
								app/Http/Requests/Vendor/BulkVendorRequest.php
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								app/Http/Requests/Vendor/BulkVendorRequest.php
									
									
									
									
										vendored
									
									
								
							@ -1,12 +1,22 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Vendor;
 | 
					namespace App\Http\Requests\Vendor;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Vendor;
 | 
					use App\Models\Vendor;
 | 
				
			||||||
use App\Utils\Traits\BulkOptions;
 | 
					use App\Utils\Traits\BulkOptions;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BulkVendorRequest extends FormRequest
 | 
					class BulkVendorRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use BulkOptions;
 | 
					    use BulkOptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -50,9 +50,7 @@ class StoreVendorRequest extends Request
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        $input = $this->all();
 | 
					        $input = $this->all();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
 | 
					        $input = $this->decodePrimaryKeys($input);
 | 
				
			||||||
            $input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        $this->replace($input);
 | 
					        $this->replace($input);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,22 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace App\Http\Requests\Webhook;
 | 
					namespace App\Http\Requests\Webhook;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Vendor;
 | 
					use App\Models\Vendor;
 | 
				
			||||||
use App\Utils\Traits\BulkOptions;
 | 
					use App\Utils\Traits\BulkOptions;
 | 
				
			||||||
use Illuminate\Foundation\Http\FormRequest;
 | 
					use App\Http\Requests\Request;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BulkWebhookRequest extends FormRequest
 | 
					class BulkWebhookRequest extends Request
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    use BulkOptions;
 | 
					    use BulkOptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										58
									
								
								app/Http/ValidationRules/User/RelatedUserRule.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								app/Http/ValidationRules/User/RelatedUserRule.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,58 @@
 | 
				
			|||||||
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace App\Http\ValidationRules\User;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use App\Libraries\MultiDB;
 | 
				
			||||||
 | 
					use App\Models\User;
 | 
				
			||||||
 | 
					use Illuminate\Contracts\Validation\Rule;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Class RelatedUserRule.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					class RelatedUserRule implements Rule
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public $input;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function __construct($input)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        $this->input = $input;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * @param string $attribute
 | 
				
			||||||
 | 
					     * @param mixed $value
 | 
				
			||||||
 | 
					     * @return bool
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public function passes($attribute, $value)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        return $this->checkUserIsRelated($value);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * @return string
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public function message()
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        return 'User not associated with this account';
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * @param $email
 | 
				
			||||||
 | 
					     * @return bool
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    private function checkUserIsRelated($user_id) : bool
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        return User::query()
 | 
				
			||||||
 | 
					                    ->where('id', $user_id)
 | 
				
			||||||
 | 
					                    ->where('account_id', auth()->user()->company()->account_id)
 | 
				
			||||||
 | 
					                    ->exists();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -23,7 +23,9 @@ class Expense extends BaseModel
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    protected $fillable = [
 | 
					    protected $fillable = [
 | 
				
			||||||
        'client_id',
 | 
					        'client_id',
 | 
				
			||||||
 | 
					        'assigned_user_id',
 | 
				
			||||||
        'vendor_id',
 | 
					        'vendor_id',
 | 
				
			||||||
 | 
					        'invoice_id',
 | 
				
			||||||
        'expense_currency_id',
 | 
					        'expense_currency_id',
 | 
				
			||||||
        'date',
 | 
					        'date',
 | 
				
			||||||
        'invoice_currency_id',
 | 
					        'invoice_currency_id',
 | 
				
			||||||
@ -34,7 +36,7 @@ class Expense extends BaseModel
 | 
				
			|||||||
        'public_notes',
 | 
					        'public_notes',
 | 
				
			||||||
        'bank_id',
 | 
					        'bank_id',
 | 
				
			||||||
        'transaction_id',
 | 
					        'transaction_id',
 | 
				
			||||||
        'expense_category_id',
 | 
					        'category_id',
 | 
				
			||||||
        'tax_rate1',
 | 
					        'tax_rate1',
 | 
				
			||||||
        'tax_name1',
 | 
					        'tax_name1',
 | 
				
			||||||
        'tax_rate2',
 | 
					        'tax_rate2',
 | 
				
			||||||
 | 
				
			|||||||
@ -80,6 +80,7 @@ class ExpenseTransformer extends EntityTransformer
 | 
				
			|||||||
            'transaction_id' => (string) $expense->transaction_id ?: '',
 | 
					            'transaction_id' => (string) $expense->transaction_id ?: '',
 | 
				
			||||||
            //'date' => $expense->date ?: '',
 | 
					            //'date' => $expense->date ?: '',
 | 
				
			||||||
            'expense_date' => $expense->date ?: '',
 | 
					            'expense_date' => $expense->date ?: '',
 | 
				
			||||||
 | 
					            'number' => (string)$expense->number ?: '',
 | 
				
			||||||
            'payment_date' => $expense->payment_date ?: '',
 | 
					            'payment_date' => $expense->payment_date ?: '',
 | 
				
			||||||
            'custom_value1' => $expense->custom_value1 ?: '',
 | 
					            'custom_value1' => $expense->custom_value1 ?: '',
 | 
				
			||||||
            'custom_value2' => $expense->custom_value2 ?: '',
 | 
					            'custom_value2' => $expense->custom_value2 ?: '',
 | 
				
			||||||
 | 
				
			|||||||
@ -106,6 +106,7 @@ class VendorTransformer extends EntityTransformer
 | 
				
			|||||||
            'updated_at' => (int) $vendor->updated_at,
 | 
					            'updated_at' => (int) $vendor->updated_at,
 | 
				
			||||||
            'archived_at' => (int) $vendor->deleted_at,
 | 
					            'archived_at' => (int) $vendor->deleted_at,
 | 
				
			||||||
            'created_at' => (int) $vendor->created_at,
 | 
					            'created_at' => (int) $vendor->created_at,
 | 
				
			||||||
 | 
					            'number' => (string)$vendor->number ?: '',
 | 
				
			||||||
        ];
 | 
					        ];
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										50
									
								
								composer.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										50
									
								
								composer.lock
									
									
									
										generated
									
									
									
								
							@ -108,16 +108,16 @@
 | 
				
			|||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "aws/aws-sdk-php",
 | 
					            "name": "aws/aws-sdk-php",
 | 
				
			||||||
            "version": "3.158.10",
 | 
					            "version": "3.158.11",
 | 
				
			||||||
            "source": {
 | 
					            "source": {
 | 
				
			||||||
                "type": "git",
 | 
					                "type": "git",
 | 
				
			||||||
                "url": "https://github.com/aws/aws-sdk-php.git",
 | 
					                "url": "https://github.com/aws/aws-sdk-php.git",
 | 
				
			||||||
                "reference": "a492e9aac7cba87177c06095c4e5bc9adcb1e397"
 | 
					                "reference": "cdf3c097a606087654ac90ea1ffb8f3e86c423be"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "dist": {
 | 
					            "dist": {
 | 
				
			||||||
                "type": "zip",
 | 
					                "type": "zip",
 | 
				
			||||||
                "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/a492e9aac7cba87177c06095c4e5bc9adcb1e397",
 | 
					                "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/cdf3c097a606087654ac90ea1ffb8f3e86c423be",
 | 
				
			||||||
                "reference": "a492e9aac7cba87177c06095c4e5bc9adcb1e397",
 | 
					                "reference": "cdf3c097a606087654ac90ea1ffb8f3e86c423be",
 | 
				
			||||||
                "shasum": ""
 | 
					                "shasum": ""
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "require": {
 | 
					            "require": {
 | 
				
			||||||
@ -189,7 +189,7 @@
 | 
				
			|||||||
                "s3",
 | 
					                "s3",
 | 
				
			||||||
                "sdk"
 | 
					                "sdk"
 | 
				
			||||||
            ],
 | 
					            ],
 | 
				
			||||||
            "time": "2020-10-20T18:11:49+00:00"
 | 
					            "time": "2020-10-21T18:12:19+00:00"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "brick/math",
 | 
					            "name": "brick/math",
 | 
				
			||||||
@ -2716,16 +2716,16 @@
 | 
				
			|||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "laravel/socialite",
 | 
					            "name": "laravel/socialite",
 | 
				
			||||||
            "version": "v5.0.2",
 | 
					            "version": "v5.0.3",
 | 
				
			||||||
            "source": {
 | 
					            "source": {
 | 
				
			||||||
                "type": "git",
 | 
					                "type": "git",
 | 
				
			||||||
                "url": "https://github.com/laravel/socialite.git",
 | 
					                "url": "https://github.com/laravel/socialite.git",
 | 
				
			||||||
                "reference": "87dfaaa0e0a85b707582e4f9bc8dab9664dcb0a4"
 | 
					                "reference": "8197acf2fe5446a2800b95d250c1da72fd6051bc"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "dist": {
 | 
					            "dist": {
 | 
				
			||||||
                "type": "zip",
 | 
					                "type": "zip",
 | 
				
			||||||
                "url": "https://api.github.com/repos/laravel/socialite/zipball/87dfaaa0e0a85b707582e4f9bc8dab9664dcb0a4",
 | 
					                "url": "https://api.github.com/repos/laravel/socialite/zipball/8197acf2fe5446a2800b95d250c1da72fd6051bc",
 | 
				
			||||||
                "reference": "87dfaaa0e0a85b707582e4f9bc8dab9664dcb0a4",
 | 
					                "reference": "8197acf2fe5446a2800b95d250c1da72fd6051bc",
 | 
				
			||||||
                "shasum": ""
 | 
					                "shasum": ""
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "require": {
 | 
					            "require": {
 | 
				
			||||||
@ -2777,7 +2777,7 @@
 | 
				
			|||||||
                "laravel",
 | 
					                "laravel",
 | 
				
			||||||
                "oauth"
 | 
					                "oauth"
 | 
				
			||||||
            ],
 | 
					            ],
 | 
				
			||||||
            "time": "2020-10-20T18:53:05+00:00"
 | 
					            "time": "2020-10-21T12:45:02+00:00"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "laravel/tinker",
 | 
					            "name": "laravel/tinker",
 | 
				
			||||||
@ -4475,21 +4475,21 @@
 | 
				
			|||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "php-http/guzzle7-adapter",
 | 
					            "name": "php-http/guzzle7-adapter",
 | 
				
			||||||
            "version": "0.1.0",
 | 
					            "version": "0.1.1",
 | 
				
			||||||
            "source": {
 | 
					            "source": {
 | 
				
			||||||
                "type": "git",
 | 
					                "type": "git",
 | 
				
			||||||
                "url": "https://github.com/php-http/guzzle7-adapter.git",
 | 
					                "url": "https://github.com/php-http/guzzle7-adapter.git",
 | 
				
			||||||
                "reference": "5b361e0dbd7d9d5e21f80400bcccf9fb8d5d1f1e"
 | 
					                "reference": "1967de656b9679a2a6a66d0e4e16fa99bbed1ad1"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "dist": {
 | 
					            "dist": {
 | 
				
			||||||
                "type": "zip",
 | 
					                "type": "zip",
 | 
				
			||||||
                "url": "https://api.github.com/repos/php-http/guzzle7-adapter/zipball/5b361e0dbd7d9d5e21f80400bcccf9fb8d5d1f1e",
 | 
					                "url": "https://api.github.com/repos/php-http/guzzle7-adapter/zipball/1967de656b9679a2a6a66d0e4e16fa99bbed1ad1",
 | 
				
			||||||
                "reference": "5b361e0dbd7d9d5e21f80400bcccf9fb8d5d1f1e",
 | 
					                "reference": "1967de656b9679a2a6a66d0e4e16fa99bbed1ad1",
 | 
				
			||||||
                "shasum": ""
 | 
					                "shasum": ""
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "require": {
 | 
					            "require": {
 | 
				
			||||||
                "guzzlehttp/guzzle": "^7.0",
 | 
					                "guzzlehttp/guzzle": "^7.0",
 | 
				
			||||||
                "php": "^7.2",
 | 
					                "php": "^7.2 | ^8.0",
 | 
				
			||||||
                "php-http/httplug": "^2.0",
 | 
					                "php-http/httplug": "^2.0",
 | 
				
			||||||
                "psr/http-client": "^1.0"
 | 
					                "psr/http-client": "^1.0"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
@ -4499,8 +4499,8 @@
 | 
				
			|||||||
                "psr/http-client-implementation": "1.0"
 | 
					                "psr/http-client-implementation": "1.0"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "require-dev": {
 | 
					            "require-dev": {
 | 
				
			||||||
                "php-http/client-integration-tests": "^2.0",
 | 
					                "php-http/client-integration-tests": "^3.0",
 | 
				
			||||||
                "phpunit/phpunit": "^7.4"
 | 
					                "phpunit/phpunit": "^8.0|^9.3"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "type": "library",
 | 
					            "type": "library",
 | 
				
			||||||
            "extra": {
 | 
					            "extra": {
 | 
				
			||||||
@ -4529,7 +4529,7 @@
 | 
				
			|||||||
                "Guzzle",
 | 
					                "Guzzle",
 | 
				
			||||||
                "http"
 | 
					                "http"
 | 
				
			||||||
            ],
 | 
					            ],
 | 
				
			||||||
            "time": "2020-09-17T07:29:54+00:00"
 | 
					            "time": "2020-10-21T17:30:51+00:00"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "php-http/httplug",
 | 
					            "name": "php-http/httplug",
 | 
				
			||||||
@ -6588,7 +6588,7 @@
 | 
				
			|||||||
                    "type": "tidelift"
 | 
					                    "type": "tidelift"
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            ],
 | 
					            ],
 | 
				
			||||||
            "time": "2020-09-18T14:27:32+00:00"
 | 
					            "time": "2020-10-07T15:23:00+00:00"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "symfony/css-selector",
 | 
					            "name": "symfony/css-selector",
 | 
				
			||||||
@ -9875,22 +9875,22 @@
 | 
				
			|||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "facade/flare-client-php",
 | 
					            "name": "facade/flare-client-php",
 | 
				
			||||||
            "version": "1.3.6",
 | 
					            "version": "1.3.7",
 | 
				
			||||||
            "source": {
 | 
					            "source": {
 | 
				
			||||||
                "type": "git",
 | 
					                "type": "git",
 | 
				
			||||||
                "url": "https://github.com/facade/flare-client-php.git",
 | 
					                "url": "https://github.com/facade/flare-client-php.git",
 | 
				
			||||||
                "reference": "451fadf38e9f635e7f8e1f5b3cf5c9eb82f11799"
 | 
					                "reference": "fd688d3c06658f2b3b5f7bb19f051ee4ddf02492"
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "dist": {
 | 
					            "dist": {
 | 
				
			||||||
                "type": "zip",
 | 
					                "type": "zip",
 | 
				
			||||||
                "url": "https://api.github.com/repos/facade/flare-client-php/zipball/451fadf38e9f635e7f8e1f5b3cf5c9eb82f11799",
 | 
					                "url": "https://api.github.com/repos/facade/flare-client-php/zipball/fd688d3c06658f2b3b5f7bb19f051ee4ddf02492",
 | 
				
			||||||
                "reference": "451fadf38e9f635e7f8e1f5b3cf5c9eb82f11799",
 | 
					                "reference": "fd688d3c06658f2b3b5f7bb19f051ee4ddf02492",
 | 
				
			||||||
                "shasum": ""
 | 
					                "shasum": ""
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            "require": {
 | 
					            "require": {
 | 
				
			||||||
                "facade/ignition-contracts": "~1.0",
 | 
					                "facade/ignition-contracts": "~1.0",
 | 
				
			||||||
                "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0",
 | 
					                "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0",
 | 
				
			||||||
                "php": "^7.1",
 | 
					                "php": "^7.1|^8.0",
 | 
				
			||||||
                "symfony/http-foundation": "^3.3|^4.1|^5.0",
 | 
					                "symfony/http-foundation": "^3.3|^4.1|^5.0",
 | 
				
			||||||
                "symfony/mime": "^3.4|^4.0|^5.1",
 | 
					                "symfony/mime": "^3.4|^4.0|^5.1",
 | 
				
			||||||
                "symfony/var-dumper": "^3.4|^4.0|^5.0"
 | 
					                "symfony/var-dumper": "^3.4|^4.0|^5.0"
 | 
				
			||||||
@ -9932,7 +9932,7 @@
 | 
				
			|||||||
                    "type": "github"
 | 
					                    "type": "github"
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            ],
 | 
					            ],
 | 
				
			||||||
            "time": "2020-09-18T06:35:11+00:00"
 | 
					            "time": "2020-10-21T16:02:39+00:00"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            "name": "facade/ignition",
 | 
					            "name": "facade/ignition",
 | 
				
			||||||
 | 
				
			|||||||
@ -12,7 +12,7 @@ return [
 | 
				
			|||||||
    'require_https' => env('REQUIRE_HTTPS', true),
 | 
					    'require_https' => env('REQUIRE_HTTPS', true),
 | 
				
			||||||
    'app_url' => rtrim(env('APP_URL', ''), '/').'/',
 | 
					    'app_url' => rtrim(env('APP_URL', ''), '/').'/',
 | 
				
			||||||
    'app_domain' => env('APP_DOMAIN', ''),
 | 
					    'app_domain' => env('APP_DOMAIN', ''),
 | 
				
			||||||
    'app_version' => '5.0.21',
 | 
					    'app_version' => '5.0.22',
 | 
				
			||||||
    'minimum_client_version' => '5.0.16',
 | 
					    'minimum_client_version' => '5.0.16',
 | 
				
			||||||
    'terms_version' => '1.0.1',
 | 
					    'terms_version' => '1.0.1',
 | 
				
			||||||
    'api_secret' => env('API_SECRET', ''),
 | 
					    'api_secret' => env('API_SECRET', ''),
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Company;
 | 
					use App\Models\Company;
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Design;
 | 
					use App\Models\Design;
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use App\Models\Gateway;
 | 
					use App\Models\Gateway;
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,14 @@
 | 
				
			|||||||
<?php
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
use Illuminate\Database\Migrations\Migration;
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
use Illuminate\Database\Schema\Blueprint;
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
				
			|||||||
@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use Illuminate\Database\Migrations\Migration;
 | 
				
			||||||
 | 
					use Illuminate\Database\Schema\Blueprint;
 | 
				
			||||||
 | 
					use Illuminate\Support\Facades\Schema;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class ExpensesNullableAssignedUser extends Migration
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * Run the migrations.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @return void
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public function up()
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        Schema::table('expenses', function(Blueprint $table) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            $table->unsignedInteger('assigned_user_id')->nullable()->change();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * Reverse the migrations.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @return void
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public function down()
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        //
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										1691
									
								
								database/schema/db-ninja-01-schema.dump
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1691
									
								
								database/schema/db-ninja-01-schema.dump
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -18,7 +18,6 @@ Route::group(['middleware' => ['api_secret_check']], function () {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Route::group(['api_secret_check', 'email_db'], function () {
 | 
					Route::group(['api_secret_check', 'email_db'], function () {
 | 
				
			||||||
    Route::post('api/v1/login', 'Auth\LoginController@apiLogin')->name('login.submit');
 | 
					    Route::post('api/v1/login', 'Auth\LoginController@apiLogin')->name('login.submit');
 | 
				
			||||||
    // Route::post('api/v1/reset_password', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.reset');
 | 
					 | 
				
			||||||
    Route::post('api/v1/reset_password', 'Auth\ForgotPasswordController@sendResetLinkEmail');
 | 
					    Route::post('api/v1/reset_password', 'Auth\ForgotPasswordController@sendResetLinkEmail');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										46
									
								
								tests/Feature/ActivityApiTest.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								tests/Feature/ActivityApiTest.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,46 @@
 | 
				
			|||||||
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					namespace Tests\Feature;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use Faker\Factory;
 | 
				
			||||||
 | 
					use Illuminate\Foundation\Testing\DatabaseTransactions;
 | 
				
			||||||
 | 
					use Tests\MockAccountData;
 | 
				
			||||||
 | 
					use Tests\TestCase;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @test
 | 
				
			||||||
 | 
					 * @covers App\Http\Controllers\ActivityController
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					class ActivityApiTest extends TestCase
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    use DatabaseTransactions;
 | 
				
			||||||
 | 
					    use MockAccountData;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function setUp() :void
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        parent::setUp();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $this->makeTestData();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function testActivityGet()
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        $response = $this->withHeaders([
 | 
				
			||||||
 | 
					                'X-API-SECRET' => config('ninja.api_secret'),
 | 
				
			||||||
 | 
					                'X-API-TOKEN' => $this->token,
 | 
				
			||||||
 | 
					            ])->get('/api/v1/activities/');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $response->assertStatus(200);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -516,7 +516,7 @@ class ClientTest extends TestCase
 | 
				
			|||||||
        $response->assertStatus(200);
 | 
					        $response->assertStatus(200);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $arr = $response->json();
 | 
					        $arr = $response->json();
 | 
				
			||||||
 | 
					info($arr);
 | 
				
			||||||
        $this->client = Client::find($this->decodePrimaryKey($arr['data']['id']));
 | 
					        $this->client = Client::find($this->decodePrimaryKey($arr['data']['id']));
 | 
				
			||||||
        $this->client->fresh();
 | 
					        $this->client->fresh();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										56
									
								
								tests/Feature/PingTest.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								tests/Feature/PingTest.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,56 @@
 | 
				
			|||||||
 | 
					<?php
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invoice Ninja (https://invoiceninja.com).
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @link https://github.com/invoiceninja/invoiceninja source repository
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * @license https://opensource.org/licenses/AAL
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					namespace Tests\Feature;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use Illuminate\Foundation\Testing\DatabaseTransactions;
 | 
				
			||||||
 | 
					use Tests\MockAccountData;
 | 
				
			||||||
 | 
					use Tests\TestCase;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @test
 | 
				
			||||||
 | 
					 * @covers App\Http\Controllers\PingController
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					class PingTest extends TestCase
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    use DatabaseTransactions;
 | 
				
			||||||
 | 
					    use MockAccountData;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function setUp() :void
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        parent::setUp();
 | 
				
			||||||
 | 
					        $this->makeTestData();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function testPingEndPoint()
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $response = $this->withHeaders([
 | 
				
			||||||
 | 
					                'X-API-SECRET' => config('ninja.api_secret'),
 | 
				
			||||||
 | 
					                'X-API-TOKEN' => $this->token,
 | 
				
			||||||
 | 
					        ])->get('/api/v1/ping');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $response->assertStatus(200);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function testHealthCheck()
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $response = $this->withHeaders([
 | 
				
			||||||
 | 
					                'X-API-SECRET' => config('ninja.api_secret'),
 | 
				
			||||||
 | 
					                'X-API-TOKEN' => $this->token,
 | 
				
			||||||
 | 
					        ])->get('/api/v1/health_check');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $response->assertStatus(200);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -36,6 +36,7 @@ use Illuminate\Support\Facades\Hash;
 | 
				
			|||||||
use Illuminate\Support\Facades\Schema;
 | 
					use Illuminate\Support\Facades\Schema;
 | 
				
			||||||
use Tests\MockAccountData;
 | 
					use Tests\MockAccountData;
 | 
				
			||||||
use Tests\TestCase;
 | 
					use Tests\TestCase;
 | 
				
			||||||
 | 
					use Illuminate\Validation\ValidationException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/** @test*/
 | 
					/** @test*/
 | 
				
			||||||
class CompanyLedgerTest extends TestCase
 | 
					class CompanyLedgerTest extends TestCase
 | 
				
			||||||
@ -57,6 +58,9 @@ class CompanyLedgerTest extends TestCase
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        parent::setUp();
 | 
					        parent::setUp();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        $this->withoutExceptionHandling();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /* Warm up the cache !*/
 | 
					        /* Warm up the cache !*/
 | 
				
			||||||
        $cached_tables = config('ninja.cached_tables');
 | 
					        $cached_tables = config('ninja.cached_tables');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -222,11 +226,16 @@ class CompanyLedgerTest extends TestCase
 | 
				
			|||||||
            'date' => '2020/12/11',
 | 
					            'date' => '2020/12/11',
 | 
				
			||||||
        ];
 | 
					        ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        try {
 | 
				
			||||||
        $response = $this->withHeaders([
 | 
					        $response = $this->withHeaders([
 | 
				
			||||||
            'X-API-SECRET' => config('ninja.api_secret'),
 | 
					            'X-API-SECRET' => config('ninja.api_secret'),
 | 
				
			||||||
            'X-API-TOKEN' => $this->token,
 | 
					            'X-API-TOKEN' => $this->token,
 | 
				
			||||||
        ])->post('/api/v1/payments/', $data);
 | 
					        ])->post('/api/v1/payments/', $data);
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					        } catch (ValidationException $e) {
 | 
				
			||||||
 | 
					            info(print_r($e->validator->getMessageBag(), 1));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $acc = $response->json();
 | 
					        $acc = $response->json();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        $payment = Payment::find($this->decodePrimaryKey($acc['data']['id']));
 | 
					        $payment = Payment::find($this->decodePrimaryKey($acc['data']['id']));
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user