From ba91c96c40dfbd85a355e6e85f0064e419e68c25 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 20 Mar 2021 13:49:45 +1100 Subject: [PATCH] update texts --- app/DataMapper/InvoiceItem.php | 2 +- .../BillingSubscriptionService.php | 24 ++++++- resources/lang/en/texts.php | 66 ++++++++++++++----- 3 files changed, 70 insertions(+), 22 deletions(-) diff --git a/app/DataMapper/InvoiceItem.php b/app/DataMapper/InvoiceItem.php index 974121958fed..35328227bdb3 100644 --- a/app/DataMapper/InvoiceItem.php +++ b/app/DataMapper/InvoiceItem.php @@ -51,7 +51,7 @@ class InvoiceItem public $custom_value4 = ''; - public $type_id = '1'; //1 = product, 2 = service, 3 unpaid gateway fee, 4 paid gateway fee, 5 late fee + public $type_id = '1'; //1 = product, 2 = service, 3 unpaid gateway fee, 4 paid gateway fee, 5 late fee, 6 promo code public static $casts = [ 'type_id' => 'string', diff --git a/app/Services/BillingSubscription/BillingSubscriptionService.php b/app/Services/BillingSubscription/BillingSubscriptionService.php index 62eba98640ab..9d406b4b2d44 100644 --- a/app/Services/BillingSubscription/BillingSubscriptionService.php +++ b/app/Services/BillingSubscription/BillingSubscriptionService.php @@ -56,7 +56,7 @@ class BillingSubscriptionService { $invoice_repo = new InvoiceRepository(); - $data['line_items'] = $this->createLineItems($data['quantity']); + $data['line_items'] = $this->createLineItems($data); /* If trial_enabled -> return early @@ -74,27 +74,45 @@ class BillingSubscriptionService } - private function createLineItems($quantity): array + private function createLineItems($data): array { $line_items = []; $product = $this->billing_subscription->product; $item = new InvoiceItem; - $item->quantity = $quantity; + $item->quantity = $data['quantity']; $item->product_key = $product->product_key; $item->notes = $product->notes; $item->cost = $product->price; + $item->tax_rate1 = $product->tax_rate1 ?: 0; + $item->tax_name1 = $product->tax_name1 ?: ''; + $item->tax_rate2 = $product->tax_rate2 ?: 0; + $item->tax_name2 = $product->tax_name2 ?: ''; + $item->tax_rate3 = $product->tax_rate3 ?: 0; + $item->tax_name3 = $product->tax_name3 ?: ''; + $item->custom_value1 = $product->custom_value1 ?: ''; + $item->custom_value2 = $product->custom_value2 ?: ''; + $item->custom_value3 = $product->custom_value3 ?: ''; + $item->custom_value4 = $product->custom_value4 ?: ''; + //$item->type_id need to switch whether the subscription is a service or product $line_items[] = $item; //do we have a promocode? enter this as a line item. + if(strlen($data['coupon']) >=1) + $line_items = $this->createPromoLine($data); return $line_items; } + private function createPromoLine($data) + { + $item = new InvoiceItem; + } + private function convertInvoiceToRecurring() { //The first invoice is a plain invoice - the second is fired on the recurring schedule. diff --git a/resources/lang/en/texts.php b/resources/lang/en/texts.php index 427445d983be..06a296e0945c 100644 --- a/resources/lang/en/texts.php +++ b/resources/lang/en/texts.php @@ -1976,7 +1976,7 @@ $LANG = array( 'require_invoice_signature_help' => 'Require client to provide their signature.', 'require_quote_signature' => 'Quote Signature', 'require_quote_signature_help' => 'Require client to provide their signature.', - 'i_agree' => 'I Agree To', + 'i_agree' => 'I Agree To The Terms', 'sign_here' => 'Please sign here:', 'authorization' => 'Authorization', 'signed' => 'Signed', @@ -3449,10 +3449,10 @@ $LANG = array( 'client_country' => 'Client Country', 'client_is_active' => 'Client is Active', 'client_balance' => 'Client Balance', - 'client_address1' => 'Client Address 1', - 'client_address2' => 'Client Address 2', - 'client_shipping_address1' => 'Client Shipping Address 1', - 'client_shipping_address2' => 'Client Shipping Address 2', + 'client_address1' => 'Client Street', + 'client_address2' => 'Client Apt/Suite', + 'client_shipping_address1' => 'Client Shipping Street', + 'client_shipping_address2' => 'Client Shipping Apt/Suite', 'tax_rate1' => 'Tax Rate 1', 'tax_rate2' => 'Tax Rate 2', 'tax_rate3' => 'Tax Rate 3', @@ -3532,8 +3532,8 @@ $LANG = array( 'marked_credit_as_sent' => 'Successfully marked credit as sent', 'email_subject_payment_partial' => 'Email Partial Payment Subject', 'is_approved' => 'Is Approved', - 'migration_went_wrong' => 'Oops, something went wrong! Make sure you did proper setup with V2 of Invoice Ninja, before starting migration.', - 'cross_migration_message' => 'Cross account migration is not allowed. Please read more about it here: https://invoiceninja.github.io/cross-site-migration.html', + 'migration_went_wrong' => 'Oops, something went wrong! Please make sure you have setup an Invoice Ninja v5 instance before starting the migration.', + 'cross_migration_message' => 'Cross account migration is not allowed. Please read more about it here: https://invoiceninja.github.io/docs/migration/#troubleshooting', 'email_credit' => 'Email Credit', 'client_email_not_set' => 'Client does not have an email address set', 'ledger' => 'Ledger', @@ -3912,7 +3912,7 @@ $LANG = array( 'show' => 'Show', 'empty_columns' => 'Empty Columns', 'project_name' => 'Project Name', - 'counter_pattern_error' => 'To use :client_counter please add either :number or :id_number to prevent conflicts', + 'counter_pattern_error' => 'To use :client_counter please add either :client_number or :client_id_number to prevent conflicts', 'this_quarter' => 'This Quarter', 'to_update_run' => 'To update run', 'registration_url' => 'Registration URL', @@ -3968,8 +3968,8 @@ $LANG = array( 'list_of_recurring_invoices' => 'List of recurring invoices', 'details_of_recurring_invoice' => 'Here are some details about recurring invoice', 'cancellation' => 'Cancellation', - 'about_cancellation' => 'In case you want to stop the recurring invoice, please click the request the cancellation.', - 'cancellation_warning' => 'Warning! You are requesting a cancellation of this service. Your service may be cancelled with no further notification to you.', + 'about_cancellation' => 'In case you want to stop the recurring invoice,\n please click the request the cancellation.', + 'cancellation_warning' => 'Warning! You are requesting a cancellation of this service.\n Your service may be cancelled with no further notification to you.', 'cancellation_pending' => 'Cancellation pending, we\'ll be in touch!', 'list_of_payments' => 'List of payments', 'payment_details' => 'Details of the payment', @@ -4135,19 +4135,26 @@ $LANG = array( 'payment_message_extended' => 'Thank you for your payment of :amount for :invoice', 'online_payments_minimum_note' => 'Note: Online payments are supported only if amount is bigger than $1 or currency equivalent.', 'payment_token_not_found' => 'Payment token not found, please try again. If an issue still persist, try with another payment method', - - ///////////////////////////////////////////////// + 'vendor_address1' => 'Vendor Street', + 'vendor_address2' => 'Vendor Apt/Suite', + 'partially_unapplied' => 'Partially Unapplied', + 'select_a_gmail_user' => 'Please select a user authenticated with Gmail', + 'list_long_press' => 'List Long Press', + 'show_actions' => 'Show Actions', + 'start_multiselect' => 'Start Multiselect', + 'email_sent_to_confirm_email' => 'An email has been sent to confirm the email address', + 'converted_paid_to_date' => 'Converted Paid to Date', + 'converted_credit_balance' => 'Converted Credit Balance', + 'converted_total' => 'Converted Total', + 'reply_to_name' => 'Reply-To Name', + 'payment_status_-2' => 'Partially Unapplied', + 'color_theme' => 'Color Theme', 'start_migration' => 'Start Migration', 'recurring_cancellation_request' => 'Request for recurring invoice cancellation from :contact', 'recurring_cancellation_request_body' => ':contact from Client :client requested to cancel Recurring Invoice :invoice', 'hello' => 'Hello', 'group_documents' => 'Group documents', 'quote_approval_confirmation_label' => 'Are you sure you want to approve this quote?', - - 'click_agree_to_accept_terms' => 'Click "Agree" to Accept Terms.', - 'agree' => 'Agree', - - 'pending_approval' => 'Pending Approval', 'migration_select_company_label' => 'Select companies to migrate', 'force_migration' => 'Force migration', 'require_password_with_social_login' => 'Require Password with Social Login', @@ -4160,7 +4167,7 @@ $LANG = array( 'security_settings' => 'Security Settings', 'resend_email' => 'Resend Email', 'confirm_your_email_address' => 'Please confirm your email address', - 'freshbooks' => 'FreshBooks', + 'freshbooks' => 'FreshBooks', 'invoice2go' => 'Invoice2go', 'invoicely' => 'Invoicely', 'waveaccounting' => 'Wave Accounting', @@ -4170,6 +4177,29 @@ $LANG = array( 'migration_auth_label' => 'Let\'s continue by authenticating.', 'api_secret' => 'API secret', 'migration_api_secret_notice' => 'You can find API_SECRET in the .env file or Invoice Ninja v5. If property is missing, leave field blank.', + 'use_last_email' => 'Use last email', + 'activate_company' => 'Activate Company', + 'activate_company_help' => 'Enable emails, recurring invoices and notifications', + 'an_error_occurred_try_again' => 'An error occurred, please try again', + 'please_first_set_a_password' => 'Please first set a password', + 'changing_phone_disables_two_factor' => 'Warning: Changing your phone number will disable 2FA', + 'help_translate' => 'Help Translate', + 'please_select_a_country' => 'Please select a country', + 'disabled_two_factor' => 'Successfully disabled 2FA', + 'connected_google' => 'Successfully connected account', + 'disconnected_google' => 'Successfully disconnected account', + 'delivered' => 'Delivered', + 'spam' => 'Spam', + 'view_docs' => 'View Docs', + 'enter_phone_to_enable_two_factor' => 'Please provide a mobile phone number to enable two factor authentication', + 'send_sms' => 'Send SMS', + 'sms_code' => 'SMS Code', + 'connect_google' => 'Connect Google', + 'disconnect_google' => 'Disconnect Google', + 'disable_two_factor' => 'Disable Two Factor', + 'invoice_task_datelog' => 'Invoice Task Datelog', + 'invoice_task_datelog_help' => 'Add date details to the invoice line items', + 'promo_code' => 'Promo code', ); return $LANG;