App\Http\Controllers\AccountController::saveInvoiceSettings PHP Method

saveInvoiceSettings() private method

private saveInvoiceSettings ( )
    private function saveInvoiceSettings()
    {
        if (Auth::user()->account->hasFeature(FEATURE_INVOICE_SETTINGS)) {
            $rules = ['invoice_number_pattern' => 'has_counter', 'quote_number_pattern' => 'has_counter'];
            $validator = Validator::make(Input::all(), $rules);
            if ($validator->fails()) {
                return Redirect::to('settings/' . ACCOUNT_INVOICE_SETTINGS)->withErrors($validator)->withInput();
            } else {
                $account = Auth::user()->account;
                $account->custom_label1 = trim(Input::get('custom_label1'));
                $account->custom_value1 = trim(Input::get('custom_value1'));
                $account->custom_label2 = trim(Input::get('custom_label2'));
                $account->custom_value2 = trim(Input::get('custom_value2'));
                $account->custom_client_label1 = trim(Input::get('custom_client_label1'));
                $account->custom_client_label2 = trim(Input::get('custom_client_label2'));
                $account->custom_invoice_label1 = trim(Input::get('custom_invoice_label1'));
                $account->custom_invoice_label2 = trim(Input::get('custom_invoice_label2'));
                $account->custom_invoice_taxes1 = Input::get('custom_invoice_taxes1') ? true : false;
                $account->custom_invoice_taxes2 = Input::get('custom_invoice_taxes2') ? true : false;
                $account->custom_invoice_text_label1 = trim(Input::get('custom_invoice_text_label1'));
                $account->custom_invoice_text_label2 = trim(Input::get('custom_invoice_text_label2'));
                $account->custom_invoice_item_label1 = trim(Input::get('custom_invoice_item_label1'));
                $account->custom_invoice_item_label2 = trim(Input::get('custom_invoice_item_label2'));
                $account->invoice_number_padding = Input::get('invoice_number_padding');
                $account->invoice_number_counter = Input::get('invoice_number_counter');
                $account->quote_number_prefix = Input::get('quote_number_prefix');
                $account->share_counter = Input::get('share_counter') ? true : false;
                $account->invoice_terms = Input::get('invoice_terms');
                $account->invoice_footer = Input::get('invoice_footer');
                $account->quote_terms = Input::get('quote_terms');
                $account->auto_convert_quote = Input::get('auto_convert_quote');
                $account->recurring_invoice_number_prefix = Input::get('recurring_invoice_number_prefix');
                if (Input::has('recurring_hour')) {
                    $account->recurring_hour = Input::get('recurring_hour');
                }
                if (!$account->share_counter) {
                    $account->quote_number_counter = Input::get('quote_number_counter');
                }
                if (Input::get('invoice_number_type') == 'prefix') {
                    $account->invoice_number_prefix = trim(Input::get('invoice_number_prefix'));
                    $account->invoice_number_pattern = null;
                } else {
                    $account->invoice_number_pattern = trim(Input::get('invoice_number_pattern'));
                    $account->invoice_number_prefix = null;
                }
                if (Input::get('quote_number_type') == 'prefix') {
                    $account->quote_number_prefix = trim(Input::get('quote_number_prefix'));
                    $account->quote_number_pattern = null;
                } else {
                    $account->quote_number_pattern = trim(Input::get('quote_number_pattern'));
                    $account->quote_number_prefix = null;
                }
                if (!$account->share_counter && $account->invoice_number_prefix == $account->quote_number_prefix && $account->invoice_number_pattern == $account->quote_number_pattern) {
                    Session::flash('error', trans('texts.invalid_counter'));
                    return Redirect::to('settings/' . ACCOUNT_INVOICE_SETTINGS)->withInput();
                } else {
                    $account->save();
                    Session::flash('message', trans('texts.updated_settings'));
                }
            }
        }
        return Redirect::to('settings/' . ACCOUNT_INVOICE_SETTINGS);
    }

Usage Example

 public function doSection($section = ACCOUNT_COMPANY_DETAILS)
 {
     if ($section === ACCOUNT_COMPANY_DETAILS) {
         return AccountController::saveDetails();
     } elseif ($section === ACCOUNT_USER_DETAILS) {
         return AccountController::saveUserDetails();
     } elseif ($section === ACCOUNT_LOCALIZATION) {
         return AccountController::saveLocalization();
     } elseif ($section === ACCOUNT_IMPORT_EXPORT) {
         return AccountController::importFile();
     } elseif ($section === ACCOUNT_MAP) {
         return AccountController::mapFile();
     } elseif ($section === ACCOUNT_NOTIFICATIONS) {
         return AccountController::saveNotifications();
     } elseif ($section === ACCOUNT_EXPORT) {
         return AccountController::export();
     } elseif ($section === ACCOUNT_INVOICE_SETTINGS) {
         return AccountController::saveInvoiceSettings();
     } elseif ($section === ACCOUNT_INVOICE_DESIGN) {
         return AccountController::saveInvoiceDesign();
     } elseif ($section === ACCOUNT_CUSTOMIZE_DESIGN) {
         return AccountController::saveCustomizeDesign();
     } elseif ($section === ACCOUNT_TEMPLATES_AND_REMINDERS) {
         return AccountController::saveEmailTemplates();
     } elseif ($section === ACCOUNT_PRODUCTS) {
         return AccountController::saveProducts();
     } elseif ($section === ACCOUNT_TAX_RATES) {
         return AccountController::saveTaxRates();
     }
 }
All Usage Examples Of App\Http\Controllers\AccountController::saveInvoiceSettings